小编bra*_*pus的帖子

正则表达式使用语言代码解析多语言字符串

我有多语言字符串格式如下:

[en]这是英语[es] estoesespañol[fr]C'estfrançaise[it]Questoèitaliano

语言的顺序并不总是相同,并不是所有语言都可用.

我正在尝试提取特定的语言字符串,但没有成功.语言字符串包含HTML,以及任何类型的特殊字符,空格,换行符,制表符等.

假设我想提取英语部分; 我需要一个正则表达式能够匹配[en]部分之后的所有内容(新行,回车符,特殊字符,制表符等),直到新语言字符串的开头:([az] {2})

这不起作用:还返回法语字符串,如果西班牙语字符串位于过去位置,则不返回任何内容.

/\[es\]((.|\n|\t|\r)*)(\[([a-z]{2})\])/u
Run Code Online (Sandbox Code Playgroud)

我不能写一个正则表达式:"[es]之后的任何东西,不是括号内的两个字母或字符串的结尾"

任何帮助都感激不尽!

php regex

0
推荐指数
1
解决办法
680
查看次数

标签 统计

php ×1

regex ×1