-1

文字列があれば

This is a @really nice#day.

最初のパスでは、出力/結果の単語として取得する必要がreallyあります (結果にはドットやその他の句読点を含めdayないでください。また、文字列に国際文字が含まれる可能性があるため、AZ、az、およびその他すべてを無視するだけに一致させるべきではないので、覚えておいてください) .

2回目のパスでは、ex の 2 つの単語と句読点を除くすべてを取得する必要があります。

This is a nice

正規表現は を介し​​て行われPHPます。

編集: @hochl の問題([@#]\w+)は、国際文字をキャッチできないšđžćčため#dayš、 としてのみ認識されること#dayです。

4

1 に答える 1

2

国際的なキャラクターを捕まえるために、あなたは以下を使うことができます:

[@#]\p{L}+

/uこれをphpで機能させるには、Unicode修飾子を使用する必要があります。

ノート:

  • は、\p{L}Unicodeの「文字」と一致するように指示しています
  • ()一致全体が常に最初のグループであるため、全体を括弧で囲む必要はありません。
于 2012-04-11T10:42:33.397 に答える