main:
lda #$5
sta $2
lda #$0
sta $0
lda #$10
sta $1
我正在寻找能够像这样匹配集团的正则表达式:[" lda","#$"," 5"] 。我已经尝试了几个小时的教程,但这对我来说仍然非常混乱。
这是我到目前为止的尝试:
^(?<label>.*?)\s*(?<sign>[#][$])\s*(?<num>\d)$
似乎只匹配lda#$ 5
这完全在Visual Studios 2012 C#
中答案 0 :(得分:0)
(\w+)\s+((#\$)(\d+)|\$\d+)
应该这样做:http://regex101.com/r/pJ0yH8
答案 1 :(得分:0)
您可以使用此正则表达式:
(?<=^\s*)(\w+)\s(\D+)(\d)
代码如下:
String input = " lda #$5";
String pattern = @"(?<=^\s*)(\w+)\s(\D+)(\d+)$";
Match m = Regex.Match(input, pattern, RegexOptions.Multiline);
if (m.Groups.Count == 4)
{
string firstpart = m.Groups[1].ToString(); // lda
string secondpart = m.Groups[2].ToString(); // #$
string thirdpart = m.Groups[3].ToString(); // 5
}
答案 2 :(得分:0)
试试这个:
(\w+)\s+([^\d]+)(\d+)
上面的适用于您提供的所有输入。