1

私は正規表現について無知ですが、ここでやろうとしていることには正しいツールであることを知っています: 次のような文字列から数値を抽出しようとしています:

approval=not requested^assignment_group=12345678901234567890123456789012^category=Test^contact_type=phone^

理想的には、そこから次のように抽出します12345678901234567890123456789012。試した正規表現はどれも機能しませんでした。この文字列から必要な値を取得するにはどうすればよいですか?

4

4 に答える 4

7

これにより、すべての数値が取得されます。

var myValue = /\d+/.exec(myString)
于 2012-07-09T14:44:44.343 に答える
4
mystr.match(/assignment_group=([^\^]+)/)[1]; //=> "12345678901234567890123456789012"

これにより、「assignment_group =」の終わりから次のキャレット^記号までのすべてが検索されます。

于 2012-07-09T14:48:38.270 に答える
1

次のようなことを試してください:

/\^assignment_group=(\d*)\^/

これにより、 の番号が取得されassignment_groupます。

var str = 'approval=not requested^assignment_group=12345678901234567890123456789012^category=Test^contact_type=phone^',
    regex = /\^assignment_group=(\d*)\^/,
    matches = str.match(regex),
    id = matches !== null ? matches[1] : '';
console.log(id);
于 2012-07-09T14:46:41.440 に答える
0

どこにも数字が存在する可能性がない場合は、必要なときにのみ行うことができます。

\d+

\d は数字に一致し、+ は「これに続く任意の数に一致する」ことを示します

于 2012-07-09T15:21:15.007 に答える