一个正则表达式\\b问题

Pattern p = Pattern.compile("[\\s]?[\"]{1}[.[^\"\\<]]*\\b(" + value + "){1}\\b[.[^\"]]*[\"]{1}");以上我是想匹配:第一个字符可以是空格或者可以不是,第二个字符和最后一个字符一定是“”号的,在引号中间就可以自已加入value任意值来匹配字段,这个value值,我一定要是一个单词,所以加上了 加界字符\\b,打个比方:"xxxxxx_abc xxxxxx"与 "xxxxxx abc xxxxxx" 问题就出来了,后者就能出来前者,有个下划线,\\b就不能识别,我就想做到两种都能识别出来(注意:\\b一定不能去,因为去了这个地方"xxxxxabcxxxxx"都在里面了,千万不能这样),所以请高手指点一下!!!我把\\b改成[\\b[_]]报错,\\b|_也不行,急!!!

第1个回答  2009-08-26
Pattern p = Pattern.compile("\"[a-zA-Z_]+\"");

一个正则表达式\\\\b问题
首先,我看你的表达式,错漏百出,例如:{1}既然重复一次,还干嘛写出来呢?[.[^\\"\\\\<]]* 又是除一些字符以外,那加上一个位置干什么?还有里边的[^\\"\\\\<],我还\\\\\\…咧,都不明白究竟写的什么。是java吧?\\要转义。你\\s知道改成\\\\s,那\\"为什么不呢?总之不知道你要搞什么。你就直...

正则表达式 \\b \\b的用法
\\b代表字与字中间那个看不见的东西,如 here is a word 那么,这句中有好几个\\b, 每个单词的前后都有一个\\b.所以你用 \\bhere\\b 可以匹配上面这个here,但如果here 不是一个单词,而是一个单词的一部分,如 adheread, 这样的话,用here 可以匹配,用\\bhere\\b就不能区配了,因为ad后面没有...

请教正则表达式'\\b'的展开
\\b 单词边界,只用以匹配单词的词首和词尾。单词被定义为一个字母数字序列,因此词尾就是用空白符或非字母数字符来标示的。如 'This class is A'用 '\\bclass\\b'匹配将得到 'class'用 '[^\\w](class)[^\\w]'匹配将得到 'class'因此我认为\\b相当与[^\\w]...

php 正则表达式\\b问题
php 正则表达式 \/\\Bis\\b\/i 完整的PHP程序如下 <?php $str='this itis'; $regex="\/\\Bis\\b\/i"; preg_match_all($regex,$str,$result); print_r($result[0]); ?>运行结果Array( [0] => is [1] => is)

关于正则表达式的菜鸟问题!关于 ^ 和 \\b 怎么感觉两者都是一样的...
^的意思是以其后的字符为开始 \\b的意思是该字符的前或者后为空格或者标点 举例来说 ^abc 和\\babc 如字串“abcd” 和字串"James abc" "James,abc" 匹配结果如下

java正则表达式"\\b"和“\\\\b”区别?
\\b 是语法 匹配一个单词边界,也就是指单词和空格间的位置 \\\\b 是转译 匹配 “\\b"

python 正则表达式 \\b
\\A匹配字符串开头 ,\\Z匹配字符串结尾 \\AS... 匹配了SPAM ,\\b匹配单词边界\\b匹配了单词SPAM和!之间的虚拟边界,还有一个点匹配!

正则表达式\\b
\\b匹配的是字之间的看不见的边界,每个单词前后都有 \\b 所以 \\byes\\b只能匹配 yes yes 而不能匹配 yesyes

Perl 正则表达式中 \\b 作用
\\b表示单词边界,如果直接的\/fred\/i的正则可以匹配”afred",但是前后有\\b就不能匹配afred,但是可以匹配"a fred"或者"=fred",就是单词边界就行。

python中关于正则内的\\b,为什么使用\\b时需要用r'\\b',但是\\w则不需要...
而\\w 只有一种。\\b的两种解释是:'\\b', 如果前面不加r, 那么解释器认为是转义字符“退格键backspace”;r'\\b', 如果前面加r, 那么解释器不会进行转义,\\b 解释为正则表达式模式中的字符串边界。而相比于\\b, \\w 只有第二种解释,并没有对应的转义字符,所以不加r, 也不会出错。

相似回答
大家正在搜