我有这个XML文档片段..
<fsm> <fparameters> <fparameter name="fsOAPath"><%#sqlscalar:select dbo.fsOaPath(<%OrderId%>)%></fparameter> </fparameters> <do> <action> <context source="/notification/fsm/parameters/parameter[@name='fsOAPath']" destination="/notification/message/parameter[@name='Body']" /> </action> </do> </fsm> <message> <parameter name="AlternateViews">text/html</parameter> <parameter name="Attachements" /> <parameter name="Body" /> <parameter name="Sender">Expresslane <%# sqlscalar:select @@servername%> </parameter> <parameter name="Subject" /> <parameter name="SubjectEncoding"/> <parameter name="To"><%#sqlscalar:select dbo.fsEmailReceipientOfOrder(<%OrderId%>)%> </parameter> </message> </fsm>
这个正则表达式
(?<vars>(?><%[\s]*)\w+(?>[\s]*%>))
哪个maches&lt;%OrderId%&gt;文本 在节点中 / FSM / fparameters / fparameter [@名称='fsOAPath“] 和/ fsm / message / parameter / [@ name ='To'] 什么是包含的正则表达式 本地节点的fparameter本地名称和参数
答案 0 :(得分:1)
试试这个正则表达式:
<(?<localName>[^\s]+).+(?<vars>(?><%[\s]*)\w+(?>[\s]*%>))