2017-11-30 20 views
0

次の文字列から状態名を抽出して抽出する正規表現を作成しようとしています。文字列から単語を抽出するRegex

Example format: Country\State\City 
USA\NY\NYC (desired output = NY) 
USA\NY (desired output = NY) 
USA\WA (desired output = WA) 
USA\NY\ALBANY (desired output = NY) 
USA\WA\SEATTLE (desired output = WA) 

私が持っている正規表現は、これまでhttps://regex101.com/r/Ltwuup/3ですが、私は私がやっている見当がつかないし、任意の助けに感謝します。

+1

これはどの言語またはツールですか? – CAustin

+0

正直なところ、文字列全体を表示している場合は、基本的な文字列操作を使用してこれらを取得するためにリソースを集中的に使用する方法はありません。 – user1274820

+0

私はいくつかのExcelデータのクリーンアップのために、この正規表現が必要です。 USA \ NY、 USA \ NY \ ALBANY、 USA \ WA、 USA \ WA \ SEATTLE – GobiasKoffi

答えて

2

私はこれがPHPであると仮定しています。あなたのリンクを開くとき、私はそれがPHPフレーバ正規表現に設定されていることがわかりました。この場合

\w+\\(\w{2})\\ 

が動作するはずです。 これは、単一のバックスラッシュ(エスケープされた)の前に任意の単語文字(国)を取り、2文字の状態コード(単語文字)を取り、それをグループ1に一致させ、次に見つかるバックスラッシュで終了します。その後、グループ1を参照してNY、WA、NCなどを持つことができます

+0

私は何をします\\(\ w {2})。* 'それをするべきです。それは、後でバックスラッシュを必要としないということだけを示しています。 – GobiasKoffi

+0

'\ wの+:私は上記のような状態を抽出したいが、いくつかのデータエントリがどのように見える場合 –

関連する問題