繁体   English   中英

PHP正则表达式解析{string} \\ {string}形式的字符串

[英]PHP regex to parse a string of the form {string}\{string}

根据标题,我需要解析string_1\\string_2形式的字符串,如字符串后跟反斜杠,然后是另一个字符串,其中包含以下要求:

  • 如果存在string_1和string_2,则将它们分成两个标记: string_1\\string_2
  • 如果只存在string_1,则返回它
  • 如果\\string_2存在但反斜杠后面没有任何内容,则不匹配任何内容。

到目前为止,我已经想出了这个:

^([\\w\\s]*)((?!\\\\\\).*)

但是string_1中的最后一个字符在反斜杠之前保持“泄漏”并转到string_2。

有办法解决这个问题吗? 或任何其他替代正则表达式? 以下正则表达式确实有助于泄漏,但它打破了第三个要求。

^([\\w\\s]*).((?!\\\\\\).*)

为了确保这个问题不是太局部化,请注意,当你有一个字符串出现在说\\section{section title comes here {*}}之前,这可以帮助解析一部分乳胶。

我认为这是你正在寻找的正则表达式:

/^([^\\]+)(\\.+)?/

第一组是至少1个字符的“非”,后跟可选的“\\”和其他任何字符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM