2013-01-17 42 views
-1

我有這樣的文字正則表達式:只有數字,字母或空間,但不是唯一的數字

ford fiesta 2010,60500,2.54 
ford fiesta review,5400,1.81 
ford,5400,1.81 

我想

ford fiesta 2010 
ford fiesta review 
ford 

我用這個表達式

(?:[a-zA-Z0-9]+[ ])+[a-zA-Z0-9]+ 

但它不能匹配ford,因爲它沒有空格。 有什麼建議嗎? 謝謝! :)

+4

爲什麼不簡單所有在逗號前?什麼樣的正則表達式/語言? –

回答

0

正確的方法,以配合可選的下面的話,用空格隔開將

^[a-zA-Z0-9]+(?:[ ]+[a-zA-Z0-9]+)* 

看到它here on Regexr

^字符串然後

[a-zA-Z0-9]+比賽的第一個字

(?:[ ]+[a-zA-Z0-9]+)*比賽由一個或多個引導逗號分隔可選字的開始相匹配。

0

如果您使用的是PHP,你可以做到這一點:

$input = 'ford fiesta 2010,60500,2.54'; 
list($output) = explode(',', $input); 
0

在你的情況下,沒有必要regex,嘗試String.Split(C#)

var result = inputString.Split(new[]{','})[0]; 

或使用正則表達式:

^([^,]+) 
0

使用這個表達式與multiline選項

^\w+(?=,) 
相關問題