# または @ で始まる文字列のみを保持したい
- foobar @sushi - わさび
- foobar #sushi - ホースラディッシュ
したがって、@susuiのみに一致させるか、その周りのテキストを削除してください。PHP または JavaScript。
# または @ で始まる文字列のみを保持したい
したがって、@susuiのみに一致させるか、その周りのテキストを削除してください。PHP または JavaScript。
「単語」をどのように定義するかに応じて、おそらく必要です
(?<=\s|^)[@#]\S+
また
(?<=\s|^)[@#]\w+
説明:
(?<=\s|^) # Assert that the previous character is a space (or start of string)
[@#] # Match @ or #
\S+ # Match one or more non-space characters
(or \w+) # Match one or more alphanumeric characters.
したがって、PHP では次のようになります。
preg_match_all('/(?<=\s|^)[@#]\S+/', $subject, $result, PREG_PATTERN_ORDER);
$result
string 内のすべての一致の配列を返します$subject
。JavaScript では、後読み (正規表現の最初の "Assert..." 部分) がサポートされていないため、これは機能しません。