如何匹配此转义的html字符串的ID?字符串的一部分以id = \“开头,以\结尾。”在此示例中,我需要art_images_attributes_0_attachement
"<div class=\"input string optional\"><label class=\"string optional\" for=\"art_images_attributes_0_attachement\"> Attachement</label><input class=\"string optional\" id=\"art_images_attributes_0_attachement\" maxlength=\"255\" name=\"art[images_attributes][0][attachement]\" size=\"50\" type=\"text\" /></div>"
=> "<div class=\"input string optional\"><label class=\"string optional\" for=\"art_images_attributes_0_attachement\"> Attachement</label><input class=\"string optional\" id=\"art_images_attributes_0_attachement\" maxlength=\"255\" name=\"art[images_attributes][0][attachement]\" size=\"50\" type=\"text\" /></div>"
祝你好运。 AsbjørnMorell
答案 0 :(得分:1)
以下正则表达式将捕获您想要的输出:
/id="([^"]*)"/
和Rubular:http://www.rubular.com/r/dtXqK2GBPe
请注意,引号前实际上没有\
个字符,在Ruby中,字符串"id=\"test\""
的内容为id="test"
,\
就在那里逃避应该包含的任何"
。
所以它也适用于id
值内的转义引号,你可以使用它:
/id="([^"\\]*(?:\\.[^"\\]*)*)"/
答案 1 :(得分:0)
正则表达式会这样做:
id=\\\"(.+?)\\\"