2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【プログラミング】C++のstring型の扱いに詳しい人来てくれ

1 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:57:31.915 ID:cB2JprhOd.net
文字列の中の数字を抜き取りたいんだがどうやればいい??

2 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:58:05.642 ID:aDnYvngqd.net
正規表現

3 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:58:31.378 ID:cB2JprhOd.net
A12B34C55A6C3

↑みたいな文字列があってそこから
12
34
55
6
3
を抜き取りたい

4 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:58:45.321 ID:cB2JprhOd.net
>>2
C++に正規表現あんの?

5 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:58:48.636 ID:XF08SUcx0.net
>>2
ありがとうございます性器表現使ってみます!

6 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:59:06.006 ID:5/f1++49d.net
数字を抜き取りたいって
【a1b2c3】

【abc】
こんなふうに変換するってこと?

7 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:59:30.456 ID:bCXliTd/0.net
正規表現で一気に抜き取るか
正規表現使わないなら1文字ずつ判定するしかないね

8 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:59:47.568 ID:h1PO7SUg0.net
正規表現だな

9 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 14:59:49.737 ID:cB2JprhOd.net
でも入力判定だから間違ってる場合もある

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

成功したらそれぞれの値を変数に代入したいの

10 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:01:12.362 ID:cB2JprhOd.net
>>6
逆よ
数値を抜き取ってこれから使いたい

11 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:02:39.859 ID:20gBTH6Oa.net
C♯しかわかりません

12 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:03:06.107 ID:s1Q8nxi+0.net
splitだけでよくね

13 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:03:51.108 ID:h1PO7SUg0.net
正規表現で一発変換
forで一文字ずつ取り出してintにキャストしてから数値比較判定

14 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:03:51.493 ID:5/f1++49d.net
>>9
上例がokで下例がngってことは、アルファベット(数値以外)が二文字続くのかngってこと?

15 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:03:56.316 ID:zO+B5CvT0.net
for文で回してif文で判定

16 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:04:12.363 ID:sPWYScXfM.net
#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;
}

17 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:06:10.570 ID:Gy1WuxzsM.net
文字列使いづらすぎる
化石言語と言われる所以だろ

18 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:07:10.297 ID:r9YKf4Hva.net
std::regex

19 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:07:21.271 ID:zO+B5CvT0.net
普通に扱えるけど
出来る人は限られてくるほど理解度が必要

20 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:08:13.989 ID:J2dPU4red.net
>>13
これかな

21 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:08:46.733 ID:J2dPU4red.net
C++ってキャストしなきゃ文字型の大小判定できない?

22 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:09:48.039 ID:ak5gf2gS0.net
こんなのも自分でできないんじゃ才能ないよ😅

23 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:10:45.422 ID:zO+B5CvT0.net
まずC++で文字列の入力という場面が限られてくる
というか一般人がC++で文字列の入力が必要なアプリケーションなんて作らないかと

24 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:16:03.699 ID:GqKHKPSFM.net
>>23
合点が行く

25 :以下、?ちゃんねるからVIPがお送りします:2022/02/25(金) 15:17:49.885 ID:mfd6Fc7Ba.net
学校の宿題だから当たり前だろ
c++だから人がってのも大概だが

総レス数 25
5 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★