0

次のコードを見て、クラスではなく ID のみを返す検索用の正規表現を作成しようとしています。

1   id="contact"
2   class="contact"
3   #contact
4   .contact

contact2行目と4行目ではなく、1行目と3行目から戻りたいです。

これは、複数のファイルを検索して、各ファイルを個別に調べて、変更が必要かどうかを確認することを避けるためです。

これは可能ですか?

4

1 に答える 1

0

どうぞ:

/(?:#|id=")(\w+)"?/g

#のいずれかで始まる文字列、またはid="単語文字が続く文字列。おそらく、ダッシュとアンダースコアを処理するように拡張したいと思うでしょう。

この場合、最初のグループは非キャプチャであり、ID テキストは最初のキャプチャ グループになります$1

アップデート

これです:

(?:(?<=id=")|(?<=#))(contact)

は、肯定的な後読みを使用してプレフィックスを検索し、文字列 "contact" だけに一致させます。これは JavaScript では機能しません (そのため、オンラインでテストすることはできません) が、テキスト エディターや のような CLI ツールでは機能しますack

于 2013-01-10T16:52:44.603 に答える