1

私は文字列を次のようにしています:

"fdsgsgf.signature=xxxxx(bv)"

そして、私は取得したいですxxxxx

と :var testRE = html.match(".signature=(.*)/\(");

そして、それを実行すると、有効な正規表現ではないという例外が発生します。

理由はありますか?

4

2 に答える 2

2

バックスラッシュを二重にエスケープする必要があります: ".signature=(.*)/\\(". これは有効な正規表現ですが、/char と一致します。必要ない場合は、単に削除してください;)

于 2013-09-30T14:09:08.310 に答える
2

コードに関するいくつかの問題:

  • /正規表現の開始スラッシュがありません
  • 代わりに、.*より適切に使用する必要があります[^(]+
  • ドットをエスケープする必要があります

変更されたコード:

html.match(/\.signature=([^(]+)/);
于 2013-09-30T14:09:10.353 に答える