Flutter로 문자에서 공백 문자를 모두 삭제
소개
문자 앞뒤에서 공백 문자를 제거하는 것은 간단합니다.
String text = ' text ';
// 前後の空白文字削除
print(text.trim());
// 前の空白文字削除
print(text.trimLeft());
// 後の空白文字削除
print(text.trimRight());
하지만 이것으로 문자 안에 들어있는 공백 문자를 삭제할 수 없습니다.
Dart에서도 정규 표현식을 사용합니다
환경
String text = ' text ';
// 前後の空白文字削除
print(text.trim());
// 前の空白文字削除
print(text.trimLeft());
// 後の空白文字削除
print(text.trimRight());
flutter --version
Flutter 1.20.1 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 2ae34518b8 (10 days ago) • 2020-08-05 19:53:19 -0700
Engine • revision c8e3b94853
Tools • Dart 2.9.0
전제 조건
막상 정규식
다음을 이용합니다.
String text = ' te xt ';
print(text.replaceAll(RegExp(r'\s'), ''));
정규 표현에 대해
Dart 는 공백에 대해 Unicode White_Space 속성(버전 6.2 이상)과 BOM 문자로 정의되어 있으므로
\s
는 다음 문자와도 일치합니다.이름
코드 포인트
CHARACTER TABULATION
U+0009
LINE FEED
U+000A
LINE TABULATION
U+000B
FORM FEED
U+000C
CARRIAGE RETURN
U+000D
SPACE
U+0020
NEXT LINE
U+0085
NO-BREAK SPACE
U+00A0
OGHAM SPACE MARK
U+1680
EN QUAD
U+2000
EM QUAD
U+2001
EN SPACE
U+2002
EM SPACE
U+2003
THREE-PER-EM SPACE
U+2004
FOUR-PER-EM SPACE
U+2005
SIX-PER-EM SPACE
U+2006
FIGURE SPACE
U+2007
PUNCTUATION SPACE
U+2008
THIN SPACE
U+2009
HAIR SPACE
U+200A
LINE SEPARATOR
U+2028
PARAGRAPH SEPARATOR
U+2029
NARROW NO-BREAK SPACE
U+202F
MEDIUM MATHEMATICAL SPACE
U+205F
IDEOGRAPHIC SPACE
U+3000
실제로 시도하면 다음과 같습니다.
final text = 'te\u0009\u000A\u000B\u000C\u000D\u0020\u0085\u00A0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFFxt'.replaceAll(RegExp(r'\s'), '');
print(text);
// 以下のような感じで出力されるはず
// flutter: text
// ただ、Unicode のバージョンによっては空白文字に U+0085 が含まれていないものがあるため
// その場合は以下のように表示されます(自分のiOSシミュレーターだったらこうなりました)
// flutter: te
xt
참고
결론
Dart 하지만 정규 표현 사용할 수 있어요!
(정규 표현 아무것도 모르는 웃음)
Reference
이 문제에 관하여(Flutter로 문자에서 공백 문자를 모두 삭제), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/blendthink/items/3a70a3ee5b72e5f4e2bc
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Flutter로 문자에서 공백 문자를 모두 삭제), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/blendthink/items/3a70a3ee5b72e5f4e2bc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)