0

以下を実現する正規表現を作成しようとしています。

General Motors --> General Motors (stays the same!)
Yahoo!         --> Yahoo (remove exclamation point)
Le7el          --> Le7el
Mat. Science   --> Mat Science

単純な「/\W+$/」を試してみましたが、残念ながら行末の句読点しかキャッチしません。

4

3 に答える 3

1

を試してみてくださいs/[^\w\s]//g。単語およびスペース以外のすべての文字が空の文字列に置き換えられます。

必要に応じて、たとえば、有効な文字と見なすものを正確に指定s/[^A-Za-z0-9 ]//gします。


さて、これは Perl ですが、重要なのは思考の正規表現です。

于 2013-11-07T18:59:19.933 に答える
1

Unicode に対応する必要がある場合は、"Punct" プロパティを使用します。

s.gsub(/\p{Punct}/, '')

これは、単純な ASCII 句読点でも同様に機能します。

于 2013-11-07T19:02:28.250 に答える