X



【プログラミング】C++のstring型の扱いに詳しい人来てくれ
■ このスレッドは過去ログ倉庫に格納されています
0001以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:57:31.915ID:cB2JprhOd
文字列の中の数字を抜き取りたいんだがどうやればいい??
0002以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:58:05.642ID:aDnYvngqd
正規表現
0003以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:58:31.378ID:cB2JprhOd
A12B34C55A6C3

↑みたいな文字列があってそこから
12
34
55
6
3
を抜き取りたい
0004以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:58:45.321ID:cB2JprhOd
>>2
C++に正規表現あんの?
0005以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:58:48.636ID:XF08SUcx0
>>2
ありがとうございます性器表現使ってみます!
0006以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:59:06.006ID:5/f1++49d
数字を抜き取りたいって
【a1b2c3】

【abc】
こんなふうに変換するってこと?
0007以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:59:30.456ID:bCXliTd/0
正規表現で一気に抜き取るか
正規表現使わないなら1文字ずつ判定するしかないね
0008以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:59:47.568ID:h1PO7SUg0
正規表現だな
0009以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 14:59:49.737ID:cB2JprhOd
でも入力判定だから間違ってる場合もある

A12B34C55A6C3←これならおっけー
AA2B34C55A6C3←この場合はアウト

成功したらそれぞれの値を変数に代入したいの
0010以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:01:12.362ID:cB2JprhOd
>>6
逆よ
数値を抜き取ってこれから使いたい
0011以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:02:39.859ID:20gBTH6Oa
C♯しかわかりません
0012以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:03:06.107ID:s1Q8nxi+0
splitだけでよくね
0013以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:03:51.108ID:h1PO7SUg0
正規表現で一発変換
forで一文字ずつ取り出してintにキャストしてから数値比較判定
0014以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:03:51.493ID:5/f1++49d
>>9
上例がokで下例がngってことは、アルファベット(数値以外)が二文字続くのかngってこと?
0015以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:03:56.316ID:zO+B5CvT0
for文で回してif文で判定
0016以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:04:12.363ID:sPWYScXfM
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

int main(){
_char__*a="11,__3.5________,5,__10___,__0.0,__999";
_char__*b;
_char__c=0x20;
_double_v;

_while(*a){
__if(isdigit(*a)){
___v = strtod(a,&b);
___printf("%c",c); c = ',';
___if((int)v==v){
____printf("%d",(int)v);
___}else{
____printf("%.1f",v);
___}
___a = b;
__}else{
___a++;
__}
_} printf("\n");
_return 0;
}
0017以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:06:10.570ID:Gy1WuxzsM
文字列使いづらすぎる
化石言語と言われる所以だろ
0018以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:07:10.297ID:r9YKf4Hva
std::regex
0019以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:07:21.271ID:zO+B5CvT0
普通に扱えるけど
出来る人は限られてくるほど理解度が必要
0020以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:08:13.989ID:J2dPU4red
>>13
これかな
0021以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:08:46.733ID:J2dPU4red
C++ってキャストしなきゃ文字型の大小判定できない?
0022以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:09:48.039ID:ak5gf2gS0
こんなのも自分でできないんじゃ才能ないよ😅
0023以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:10:45.422ID:zO+B5CvT0
まずC++で文字列の入力という場面が限られてくる
というか一般人がC++で文字列の入力が必要なアプリケーションなんて作らないかと
0024以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:16:03.699ID:GqKHKPSFM
>>23
合点が行く
0025以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:17:49.885ID:mfd6Fc7Ba
学校の宿題だから当たり前だろ
c++だから人がってのも大概だが
0026以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/02/25(金) 15:47:42.971ID:Vs4TfeW+M
toCharArrayしてisalphaだったらその文字を””に足していけば?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況