2010-11-25 13 views
0

私はいくつかのオプションの文字列をテストできるように正規表現関数を書いています。Javascript文字列の前と後ろの文字列を確認する正規表現

ここでは検索したい文字列の例を示します。

5.6 - 6.6* 
5.6 - 6.6(4) 
<5.6 - 6.6** 

基本的に達成したいのは、これらのオプションのいずれかの文字列の一致です。この例では(5.6 - 6.6)のような変数を渡していることに注意してください。私の価値観の中には、最後に「*」があるものもあれば、そうでないものもあります。しかし、まだマッチが必要です。

MY CODE WHICH WORKS ON "5.6 - 6.6*" 

fieldValuesArray[0] = "5.6 - 6.6" 

myregexp = new RegExp("\\b(<)?"+ fieldValuesArray[0]+"(\\*\\(\\)1234)?\\b") 

testRegEx = myregexp.test("<5.6 - 6.6**") 
    if(testRegEx == false){ 
    hide = "yes" 
} 

begginingでない「<」がない場合には動作しますが、1つがあるときには、値を見つける文句を言いません。

誰かが助けてくれることを願っています。

答えて

1

あなたがチェックしている文字列にも正規表現の文字が含まれていることを覚えておく必要があります。 "5^6 - 6 $ 6"と一致するので、エスケープする必要があります(リテラルなピリオドに一致させるには '。'として使用します)。

は、以下が動作するあなたの3つの例を一致させるには:

.*?5\.6\s-\s6\.6(\*+|\(\d*\)) 

あなたは、私はちょうど空白文字ではなく、空白期間を脱出し、指定したそこに見ることができます。これは、あなたの正規表現の空白ではなく、あなたの文字列に空白文字があることを保証します。

関連する問題