我有這樣一個路徑:如何用正則表達式獲得前一個單詞?
C:\ Development.TFS \ Examn \ R4分支\網絡\ OrganisationManager \主題\藍色\ CSS
我需要一個正則表達式得到了這個詞「藍色「。我試過了,但還沒有找到解決方案。它實際上是從該字符串的最後一個單詞之前得到該單詞。 請幫忙, 謝謝
我有這樣一個路徑:如何用正則表達式獲得前一個單詞?
C:\ Development.TFS \ Examn \ R4分支\網絡\ OrganisationManager \主題\藍色\ CSS
我需要一個正則表達式得到了這個詞「藍色「。我試過了,但還沒有找到解決方案。它實際上是從該字符串的最後一個單詞之前得到該單詞。 請幫忙, 謝謝
(\w+)\W+\w+$
匹配倒數第二個單詞,將其捕獲到反向引用編號中。 1,然後匹配一個或多個非單詞字符,然後匹配最後一個單詞,然後匹配EOL。
如果你真的不希望實際的話,但路徑元素匹配(即使它們包含非字字符),然後
([^\\:]+)\\[^\\]+$
可能做得更好。
編輯:添加:
到「倒數第二個字的組」,因此正則表達式也可以處理相對路徑。
如果(eregi( '主題\\(即[az] +)\\ CSS',$主題)){ #匹配成功 }其他{ #匹配嘗試失敗 }
一個PHP例如讓單詞blue。
也許你必須嘗試正則表達式的朋友 這是一個偉大的工具,使正則表達式 – Marco 2010-01-29 11:20:45
難道你不能簡單地使用字符'\'拆分字符串,然後得到splitResult [splitResult.Count-1]?
你總是可以替換「\」在你的環境中的路徑分隔符,更一致的結果
另一種選擇:
(\w+)\\\w+$
我發佈這個和刪除,因爲OP的路徑中的「單詞」可以包括非'\ W'字符像'-',''','空格'等 – Amarghosh 2010-01-27 08:43:09
你應該說明你所使用的語言。 – ghostdog74 2010-01-27 08:26:44