19


4

フォーマットは次のとおりです。 `string:num`ここで、numは任意の数字ですが、stringは照合が必要な既知の文字列です。 これをif文に含めるとします。

if( 'string:'の後に数字が続くものと一致します){//何かをする}

6 Answer


43


あなたが欲しい…​

if(stringYouHave.match(/ ^ string:([0-9])$ /)){//何かをする}

これも:

  1. 文字列の先頭

  2. `string:`あなたが言及したリテラル "string:"

  3. `(…​..)`この部分式は、_which_番号が文字列に含まれていることを知る必要がある場合に後で参照できます(ただし、この場合は、単に '' string: ''を ''に置き換えることもできます)。 」

  4. [0-9] 0 'と 9`の間の _a_文字(すなわち、数字)

  5. ``「それらのうちの1つ」(すなわち、上記の数字)を持っている必要がありますが、任意の数を持つことができます

  6. 文字列の最後の $


5


if(it.match(/ ^ string:\ d $ /)({... }


3


入力文字列がパターンと一致するかどうかだけを確認したい場合は、https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/RegExp/test[RegExp.test]関数を使用できます。

if(/ ^ string:[0-9] $ /。テスト(入力)){// .. }

または String.search関数を使って:

if(input.search(/ ^ string:[0-9] $ /)!= -1){// .. }

検証して番号を取得する場合は、次の手順を実行します。

var match = input.match(/ ^ string:([0-9])$ /)、number;

if(match){number = match [1]; //数値に変換するための単項プラス//それを処理する}


1


上記は整数に適しています。もしあなたが浮動小数点数、あるいは科学的表記(Cのような言語で理解されるように)さえ欲しいなら、あなたはこのようなものが欲しいでしょう:

if(stringYouHave.match(/ ^ string:[ - ]?[0-9](\。[0-9])?([eE] [ - ]?[0-9])?$ /)){/ /何かをする}

あなたは最初の[ - ]を削除できますか? あなたがサインを気にしないのなら、(。[0-9])? あなたが浮動小数点を気にしないなら、そして([eE] [ - ]?[0-9])? 科学表記法の指数を気にしないのであれば。 しかし、あなたがそれらにマッチしたいというチャンスがあるなら、あなたはそれらを正規表現の中にオプションとして含めることを望みます。


1


if(teststring.match(新しいRegExp( "^" knownstring ":\ d $")))){//いくつかのコード}


0


if(!! "string:5456" .match(/ ^ string:\ d $ /)){... }

上記の例では、数値は整数です。