2011-10-22 21 views
4

正規表現を使用して番号をどのように分割して選択するか。私はまだ不完全なものに見つける可能性は低い正規表現を文字列から分割する

1dozen 3ダース dozen1 < =が、ユーザがそれも

30 /キロ

を入力すると仮定:ユーザーは次のように文字列を入力することができます

/[a-z](?=\d)|\d(?=[a-z])/i 

しかしスペースとスラッシュがありません。誰でも助けてくれますか?

+0

ユーザーが数字とテキストだけを入力すると、parseInt(str、10)はジョブを実行します – mplungjan

答えて

12

ここでの検索は完全に不要です。あなたの数字のすべてとマッチオブジェクトを取得

var text = "1dozen 3 dozen dozen1 30/kg"; 
var regex = /(\d+)/g; 
alert(text.match(regex)); 

http://jsfiddle.net/5WJ9v/

コードを参照してください。

上記のスクリプトは正しく1,3,1,30に通知します。

+0

ウィスカーで私を倒してください! :) –

+0

本当に独創的! –

2
var str = '1dozen 3 dozen dozen1 30/kg'; 
str.match(/\d+/g); // ["1", "3", "1", "30"] 
関連する問題