43

次のような文字列から最初のコンマ (名と姓) の前にテキストを抽出したい:

John Smith, RN, BSN, MS
Thom Nev, MD
Foo Bar, MD,RN

私は正規表現で試しました:

(.*)\s(.*),\s

しかし、これはすべての状況で機能するわけではありません。これを達成する方法は?

4

6 に答える 6

103

文字列の先頭から最初のカンマまでのすべてに一致します。

^(.+?),
于 2012-08-27T20:04:54.123 に答える
35

どうですか:yourString.split(",")[0]

于 2012-08-27T20:07:53.727 に答える
11

以下はどうでしょう。

[^,]*

[^,]*「コンマではない任意の数の文字に一致する」ことを意味します。これはまさにあなたがここでやろうとしていることだと思います。^次のように、文字列 iwth の先頭に固定することができます。

^[^,]*
于 2012-08-27T20:04:27.960 に答える
6

非貪欲な正規表現演算子を使用する必要があります。:(.+?),の代わりに: を試してください(.+),。貪欲な演算子を使用すると、最初のコンマではなく最後のコンマの前のすべてに一致することに注意してください。

于 2012-08-27T20:10:38.000 に答える
-2
^[a-zA-Z0-9]+ 

..これを使用してください...これは、最初のコンマ区切り値を取得するための正しい答えです

于 2013-10-17T09:31:48.423 に答える