2

私は非常に単純な正規表現を試しています。私の質問は、 if が次の用語のいずれかが my の にあることを確認する必要があるということですdata-titledivアラートはそう言っています:Person Name, Email, Titleとさらにいくつかの文字列。

私はいくつかの組み合わせを使用しましたが、それを行うことができませんでした...だから私はここでフィドルを作りました:|キャッチしたい主なフレーズ。誰か助けてくれませんか?substring または indexOf を使用して実行できることはわかっていますが、正規表現で実行したいと考えています。

JS:

title = $('#me').attr('data-title');
alert(title);

if (title.match((Person Name) | (Email) | (Message) | (Company) | (Mobile) | (Title))) alert("It matched!");​

HTML:

<div id='me' data-title='en_Person name'>MY NAME IS FOO</div>

</p>

4

2 に答える 2

1

への引数で適切な正規表現を使用してみてくださいString.match:

if (title.match(/Person Name|Email|Message|Company|Mobile|Title/)) {
    alert("It matched!");
}​

http://jsfiddle.net/mblase75/aLdWD/3/

于 2012-12-18T20:17:31.130 に答える
1

http://jsfiddle.net/aLdWD/2/

区切り文字で正規表現をラップする必要があり/ます。あなたが持っていたのは単なる構文エラーでした。また、修飾子を使用して大文字と小文字を区別する必要がありますi(タイトルには「人名」がありましたが、式には「人名」がありました)。括弧は何も追加しません。

于 2012-12-18T20:17:50.127 に答える