您好我有一个关于根据以下正则表达式匹配组的问题
static string partPattern = @"^(?<Key>\w+)\s*(?<Value>.*)$";
示例数据如下:
TEST_REPLICATE
{
REPLICATE_ID 1986
ASSAY_NUMBER 877
ASSAY_VERSION 4
ASSAY_STATUS "Research"
}
我能够正确检索值,如果值为NULL,它也能正常工作。我想要做的是还检索一个值,例如最后一个双引号的模块。我不确定我是否正确地做了,这对于上述场景是否是正确的正则表达式,我在w之前添加了引号。请更正,谢谢
static string partPattern = @"^(?<Key>\"w+)\s*(?<Value>.*)$";
答案 0 :(得分:1)
你的正则表达式不正确。至少你提供的输入..
如果我理解了你的问题,这就是你需要的正则表达式。
^\s*(?<Key>\w+)\s*\"?(?<Value>.*?)\"?$
它适用于multiline
模式......
答案 1 :(得分:0)
不确定问题出在哪里。这对我有用:
\s*(?<Key>[^\s]+)\s*(?<Value>.*)