capture-group

    1熱度

    2回答

    我試圖從一串使用正則表達式的pascal代碼中提取參數名,這是我嘗試使用的最複雜的。請注意,永遠不會有空白區域,圓括號將始終存在。 (rate:real;interest,principal:real) 我目前得到了重新如下: [(](?:([\w]*)(?:[:][\w])?[;|,]?)*[)] 我希望作爲再經過參數我可以訪問每一個捕獲組,但顯然我不能。對於上面的例子,我需要的值是「利

    1熱度

    2回答

    我試圖解析下面的文本,在第二級下的「餐飲:」後面的數字。因此'666'應該被退回。 MAIN LEVEL Entrance: 11 Dining: 33 SECOND LEVEL Entrance: 4444 Living: 5555 Dining: 666 THIRD LEVEL Dining: 99

    1熱度

    1回答

    我有一個文件,看起來像這樣: public class FunctionalColors { private static var colorArray:Array = new Array(); public function FunctionalColors(e:Enforcer) { } public static function get co

    1熱度

    1回答

    我試圖在正則表達式中使用反向引用向組中遞歸捕獲多個組。儘管我正在使用Pattern和Matcher以及「while(matcher.find())」循環,但它仍然只捕獲最後一個實例,而不是所有實例。在我的情況下,唯一可能的標籤<SM>,<PO>,<POF>,<POS>,<POI>,<POL>,<poif>,<離題>。由於這些格式標記,我需要捕獲: 標籤以外(任何文字,使我可以格式化爲「正常」的文字

    1熱度

    2回答

    我正在使用Java的正則表達式庫。我想根據以下格式驗證字符串: 31,5,46,7,86(...) 數量的數量是未知的。我想確保該字符串中至少有一個數字,並且每兩個數字之間用逗號分隔。我也想從字符串中獲取數字。 (注:這只是一個簡單的例子,string.split不會解決我的實際問題) 我寫了下面的正則表達式: ({[0-9]++)((?:,[0-9]++)*+) 驗證部分作品。然而,當我

    1熱度

    1回答

    我遇到命名捕獲組的問題並重新使用它們。看起來像我命名捕獲組A時,它首先捕獲類似「asd」的東西,然後使用\ k並嘗試再次使用捕獲組A的表達式,但它不起作用,因爲它不匹配正則表達式I originaly在A組中寫道,但是它試圖匹配先前匹配的內容,即「asd」。 所以,如果我有這樣的: ^(?<A>(?:a|s|d))\k<A>$ 我鍵入: aa 這工作,因爲捕獲組的第一個匹配的字母和\k<A

    1熱度

    1回答

    我正在製作一個簡單的基於堆棧的語言,它使用命令來操作堆棧。當我在源代碼中找到一個命令時,我使用這個正則表達式來分隔出實際的命令名,例如sum,以及命令的參數。參數被三角括號包圍並用逗號分隔。 這裏是我目前使用的正則表達式: (?<command>[^<>\s]+)(\<(?<args>(\d+)+(?>,\s*\d+)*)\>)? 現在這工作得很好,這裏是其中的一些例子的工作: + =>

    -1熱度

    1回答

    我提到這個問題 - Capture group reference + numeral 我試着用這兩個選項。下面是使用ECMAScript表達式示例代碼(我想我需要用這個,糾正我,如果我錯了) - $string = "box.last_rollout_revision = dummy"; $regex = "/(box\.last_rollout_revision[\s]*=[\s]*)[a

    4熱度

    1回答

    示例代碼: #!/usr/bin/env python import re print re.sub(r'a+(\d)?', r'\1', "aaaa3") print re.sub(r'a+(\d)?', r'\1', "aaaa") # error! 第二print聲明給我一個錯誤: 3 Traceback (most recent call last): File "

    2熱度

    1回答

    如果有人可以幫助請,我想使用正則表達式和捕捉組做一個sed追加,但它不是完全的工作: echo "#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/" | sed -re '/#baseurl=http:\/\/mirror.centos.org(.*)/a baseurl=https:\/\/10.10.