2016-02-01 43 views
-3

試過不同的正則表達式生成器,沒有運氣。preg_match正則表達式語法

我有這個字符串,我把的preg_match:

$search_string = "/^:([A-Za-z0-9_\-]+)[@[email protected]\.\-]+\s*([A-Z]+)\s*[:]*([\#a-zA-Z0-9\-]+)*\s*[:]*([!\#\-\.A-Za-z0-9 ]+)*/"; 

它基本上是要求用戶名。不幸的是,當用戶名已經強調它。例如iam_coolguy不起作用。

如何爲此搜索字符串添加下劃線? 我似乎無法弄清楚正則表達式的工作原理。

它不是重複的,滾過所有preg_match線程。

/[a-z]/i對我來說似乎很容易理解,但是我的字符串太過先進,根本不瞭解。

謝謝。

+1

'[a-z _] +'與'_'匹配的用戶名有什麼不對?爲什麼這麼長的正則表達式? –

+1

爲什麼你在限制用戶名? –

+0

由於您沒有向我們展示輸入樣本,我們無法爲您提供幫助。 「用戶名」本質上是無用的信息。 **任何**可能是一個用戶名,這意味着'/.*/'將是一個有效的正則表達式。 –

回答

0

如果你只是希望抓住//的

我只想用這個表達式\/(.*)\/

但正如其他人說,你還沒有給出任何限制哪些用戶名可以和財產以後間不能擁有它。

如果你需要更多,說一些,我會調整我的答案。