2016-01-25 129 views
-3

我需要一些幫助來完成作業。老師推薦使用Regexr.com作爲此練習的工具。刪除包含任何不是字母正則表達式的單詞

in 1.任務是使用字母a,k,t,l並標出長度爲6個字符的單詞幷包含這些字符。

in 2.任務是標出所有以a開頭的單詞。

我在1中遇到的問題是其中一個標記的「單詞」在標記的文本之前包含+,我不知道如何排除整個單詞。已嘗試圍繞正則表達式,但沒有成功。

(([a,k,l,t]){6}\b)

  1. http://regexr.com/3clf6

在2.我有同樣的問題,但反向。在標記的詞語後面標註了一些標點符號。我似乎無法找到任何解決方案。

(\ba\w*\b) 
  • http://www.regexr.com/3clff
  • 提前感謝!

    +3

    您需要包括AREN」的例子在SO上工作。我沒有點擊進入一些隨機站點 – Vorsprung

    +0

    1)我不明白這些字母與比賽有什麼關係。反正你不需要逗號。 2)你的正則表達式和結果看起來是正確的。我沒有看到你的意思是「有一些標點符號」。 – m0skit0

    +0

    一般而言'所有單詞'不能用正則表達式來描述!事實上,_language_不能用正則表達式來描述。 – sln

    回答

    0

    更新:

    也許正向前查找是那麼第二個一個正確的選擇?

    /(?=a)(\b[^\s]*)/ig

    如果一個字有「一」開始此正則表達式的檢查,不消耗「a」和與(\b[^\s]*)繼續從同一位置上匹配所有非空白字符。請注意,如果沒有\b,那麼的部分teatest也將被匹配。


    不知道你的意思是與第一個是什麼,但對於第二個,你可以使用:

    /a[^\s]+/ig 
    

    測試:

    asdfasdfsdf => match 
    aaaa => match 
    akltaA:: => match 
    sdfA => no match 
    
    +0

    謝謝你,但由於它成爲一個子串搜索器而不能正常工作,而不是搜索以a開頭的單詞。 – justastudent

    +0

    我已經更新了我的答案..可能它現在有幫助。 – eol

    相關問題