pattern-matching

    1熱度

    1回答

    初學者問題在這裏,我只花了幾個小時的語言。 球拍dictionaries,通過哈希表來實現,對列表等的(match)功能識別(hash-table (pat pat)...),(list-no-order pat...)等,但不(dict (pat pat)...)。 我認爲這對於dict接口上的模式匹配會有幫助,因爲有相同的理由,它有用的接口。其疏忽表明情況並非如此。誰能告訴我我錯過了什麼?如果

    0熱度

    1回答

    我想知道在F#中是否存在代碼功能(不是編譯器功能),用於使不完整模式匹配成爲錯誤而不是警告。 我需要這個能夠在個案的基礎上。即在代碼中的某些地方,我想將不完整的模式匹配作爲警告,並且在同一個程序集的其他地方,我希望它是一個錯誤。因此,如Compile-time constraint for complete pattern match所示,設置編譯器標誌將全部不完整的模式匹配警告視爲錯誤是不夠的。

    0熱度

    3回答

    我有兩個表,需要使用兩個相似的列來連接它們。 第一個表被稱爲文章有一個名爲'slug'的文章的段落線,例如:'特朗普 - 失敗 - 再次。 第二個表被稱爲日誌,並有一個名爲與文章的URL路徑路徑列,例如:「/用品/王牌 - 失敗 - 尚未再次/」 這裏是我的搜索查詢: "SELECT articles.title, count(*) as num FROM articles, log WHERE

    0熱度

    1回答

    我目前在做斯卡拉過程Functionnal編程原則上Coursera和我剛剛得知模式匹配。我試圖做一些似乎不可能的事情,我想知道什麼是正確的習慣用法。 這裏從課程的一些代碼: trait Expr case class Number(n: Int) extends Expr { def next = n + 1 // I've added this method } case cl

    -1熱度

    1回答

    我有一個簡單的函數,它在控制檯中工作,並用','代替'$',但它在js文件中不起作用。 function returnRegExp(str) { return str.replace(new RegExp('\\$#', 'g'), ',', 'g'); } 在此先感謝

    0熱度

    1回答

    我想計算列名中具有常見模式的行的平均值,列名中包含「_3」和「_2」的行的mean_A以及列名包含「_3」的行的mean_B和「_4」。 這是我的例子: structure(list(sample1_type_1 = c(10.591, 41.37), sample1_type_2 = c(9.985, 35.691), sample1_type_3 = c(9.153, 35.317), sa

    3熱度

    1回答

    我正在關注在線tutorial on Haskell。我們定義一個函數來添加二維向量,用數組元組對錶示。以下是顯式類型聲明,確保兩個輸入都是二維向量。 addVectors :: (Num a) => (a, a) -> (a, a) -> (a, a) 我明白爲什麼下面的函數定義使用模式匹配:它描述了輸入數據應符合的模式。 addVectors (x1, y1) (x2, y2) = (x1

    1熱度

    2回答

    def listMatch(list:List[Int]): Unit = list match { case a @ ((31 :: tail) :+ 4) => println(tail) } listMatch(List(31,1,2,3,4)) 當我運行上面的結果是「列表(1,2,3)」。 所以我的問題是tail函數調用在「println(tail)」語句中引用的位置?

    1熱度

    1回答

    我試圖從CLRS的書,這是關於字符串算法,天真模式搜索 假設解決練習32.1-2,在模式P中的所有字符是不同的。顯示如何加速 NAIVE-STRING-MATCHER在n字符文本上在時間O(n)上運行。 所以我試圖優化我想出的天真蠻力解決方案,但我不認爲我可以做得更好,以減少O(n)的整體運行時間。 <?php //naive search $a = array('a', 'b', 'u',

    0熱度

    2回答

    我的字符串中將包含()。我需要做的是改變括號內的文字。 示例字符串:"B.TECH(CS,IT)"。 在我的字符串,我需要出現在括號內的內容更改爲這樣的事情.. B.TECH(ECE,EEE) 我試圖解決這個問題如下.. reg = r'(()([\s\S]*?)())' a = 'B.TECH(CS,IT)' re.sub(reg,"(ECE,EEE)",a) 但我得到的輸出喜歡這個..