现在需要正则表达式匹配以#或者 @开始并且以#或者 @结束的字符,例如#你好##234:wdwww#+@eeur_222@
需要获取结果为你好,234:wdwww,eeur_222,求问如何实现。
![]() | 1 ZhLTE 2018-02-07 16:06:27 +08:00 ^/#/@[/S]+/#/@$ |
![]() | 2 songz 2018-02-07 16:58:08 +08:00 ![]() (?!#|@|\+)([\d\w\W]) |
![]() | 3 Biwood 2018-02-07 17:18:26 +08:00 ![]() (#|@)([^#@]+)\1 需要二重匹配,一次搞不定 |
![]() | 4 noe132 2018-02-07 17:29:37 +08:00 ![]() > '#你好##234:wdwww#+@eeur_222@'.match(/#(.+?)#|@(.+?)@/g) <["#你好#", "#234:wdwww#", "@eeur_222@"] |
![]() | 5 luoway 2018-02-07 17:35:37 +08:00 ![]() Q1:正则表达式匹配以#或者 @开始并且以#或者 @结束的字符 A1:str.replace(/^(?:#|@)(.*)(?:#|@)$/g, '$1') Q2:#你好##234:wdwww#+@eeur_222@ 需要获取结果为你好,234:wdwww,eeur_222,求问如何实现 A2:str.replace(/[#+@]+/g, ',').replace(/^,(.*),$/g, '$1') |
![]() | 6 songz 2018-02-07 19:11:37 +08:00 ![]() @Biwood #3 参考了 3 楼的,优化了下我自己的 2 楼,最终: (?!#|@|\+)([^#@]+) |
![]() | 7 ZhLTE 2018-02-08 14:56:03 +08:00 ![]() 没注意审题 应该是(#|@)([^#@]+)\1 你需要的应该是 \2 ..和三楼一致-。- |