正则表达式如何匹配人民币符号

来源:百度知道 编辑:UC知道 时间:2024/05/12 12:47:38
有一段代码“价格:<span class="our-price">¥18.00</span>”
我要通过正则表达式得到18.00元,正则表达式应该怎么写。

我这写: '/our-price\">(.+)<\/span>/' 不对,¥符号变成了特殊字符。下面的所有东西就都跟着变了成了特殊字符。

对¥该如何处理?

'/our-price\">\u00A5 (.+)<\/span>/'

“\unnnn”表示“ Unicode代码中十六进制代码为nnnn的字符 ”

我查过表了,¥的Unicode代码十六进制代码为00A5,所以就可以这样的

我测试过了,一定可以的唷~~

【另附上我以前学正则的资料:】

表7.尚未详细讨论的语法 \a 报警字符(打印它的效果是电脑嘀一声)
\b 通常是单词分界位置,但如果在字符类里使用代表退格
\t 制表符,Tab
\r 回车
\v 竖向制表符
\f 换页符
\n 换行符
\e Escape
\0nn ASCII代码中八进制代码为nn的字符
\xnn ASCII代码中十六进制代码为nn的字符
\unnnn Unicode代码中十六进制代码为nnnn的字符
\cN ASCII控制字符。比如\cC代表Ctrl+C
\A 字符串开头(类似^,但不受处理多行选项的影响)
\Z 字符串结尾或行尾(不受处理多行选项的影响)
\z 字符串结尾(类似$,但不受处理多行选项的影响)
\G 当前搜索的开头
\p{name} Unicode中命名为name的字符类,例如\p{IsGreek}
(?>exp) 贪婪子表达式
(?<x>-<y>exp) 平衡组
(?im-nsx:exp) 在子表达式exp中改变处理选项
(?im-nsx) 为表达式后面的部分改变处理选项
(?(exp)yes|no) 把exp当作零宽正向先行断言,如果在这个位置能匹配,使用yes作为此组的表达式;否则使用no
(?(exp)yes) 同上,只是使用空表达式作为