我有一個單一的線:正則表達式來驗證串用3場/基團,每個字段/組將需要進一步的驗證
file:///var/run/storm/blah.jar storm.starter.ExclamationTopology exclamation-topology
由3(沒有更多的,不低於)字段/組由分離一個空間。
- 第一場需要首先無論是
file://
或hdfs://
- 第二場也沒有限制。
- 第三個字段不能包含
.
/
:
\\
我習慣使用幾個正則表達式與它周圍的一些語言邏輯......工作這樣的事情出在cut -d' ' -f1 | sed -e 'regex here'
。但是我正在使用的應用程序不允許這樣做,而且我正在努力弄清楚如何做到這一點。
我嘗試了一些沿着/(\b[^\s]+\b){3,3}/g
的行,但如果我添加第四個字段,並且它有任何數字,。, - 等,它將匹配。我也不知道如何在第一個或第三個特定字段上執行正則表達式。
我不能使用cut | sed
,因爲它需要是一個單一的正則表達式。該應用程序是Cloudera Manager,不幸的是他們的文檔很差。它只是說它是一個正則表達式。如果轉到以下URL並查找「字符串」類型,它將顯示您可以使用「conformRegex」,然後使用正則表達式來驗證字符串。 Cloudera SDL parameter types
如何創建一個單一的正則表達式來完成上述所有功能?
你真正的問題是什麼? –
在論壇發佈加入提問 –
你嘗試過什麼正則表達式?你的「應用程序」支持什麼版本的正則表達式?你的'cut |怎麼樣? sed'嘗試不允許? –