次のような文字列から最初のコンマ (名と姓) の前にテキストを抽出したい:
John Smith, RN, BSN, MS
Thom Nev, MD
Foo Bar, MD,RN
私は正規表現で試しました:
(.*)\s(.*),\s
しかし、これはすべての状況で機能するわけではありません。これを達成する方法は?
文字列の先頭から最初のカンマまでのすべてに一致します。
^(.+?),
どうですか:yourString.split(",")[0]
以下はどうでしょう。
[^,]*
[^,]*
「コンマではない任意の数の文字に一致する」ことを意味します。これはまさにあなたがここでやろうとしていることだと思います。^
次のように、文字列 iwth の先頭に固定することができます。
^[^,]*
非貪欲な正規表現演算子を使用する必要があります。:(.+?),
の代わりに: を試してください(.+),
。貪欲な演算子を使用すると、最初のコンマではなく最後のコンマの前のすべてに一致することに注意してください。
^[a-zA-Z0-9]+
..これを使用してください...これは、最初のコンマ区切り値を取得するための正しい答えです