1. java正则表达式怎么书写
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
下面介绍具体的方法。
1、步骤一 : 新建一个工程和类
我们在这个类中开发相关的代码,先看看 java.util.regex 这个包吧。
2、步骤二 : 类 Pattern 的使用
类Pattern , 其一个对象就代表一种指定的正则表达式,我们通过这个类和一些正则表达式的规则来生成自己想要的字符串匹配规则!
这个类,你无法通过 new 来创建对象,其提供了一个静态方法 compile("正则规则串")来创建对象, 比如我们想要一个以 "java" 开头的字符串匹配规则,我们会用如下代码 Pattern 对象 :
Pattern pattern = Pattern.compile("^java");
注意 : ^ 这个符号是正则表达式中的规则,表示字符串的开头!关于其他规则,我们后面会有相关经验给大家逐一介绍!
3、步骤三 : 类 Matcher 的使用
类 Matcher, 代表一个串在特定Pattern对象下的匹配结果,我们通过这个结果可以知道这个串是否符合我们的要求 (我们的具体要求在 Pattern 对象中体现!)。使用方法为 :
// 先构建一个特定的 Pattern 对象
Pattern pattern = Pattern.compile("^java");
// 调用 Pattern 对象的 matcher 方法,传入一个串,得到匹配结果!
Matcher matcher = javaPrefixPattern.matcher("一个字符串");4、步骤四 : 测试和总结
运行代码,查看程序运行效果!正则表达式的整个使用框架就是这样,其不同的应用场景基本就是不同的匹配规则!
总结 :正则表达式的彪悍,主要在于其很多成熟的规范的语义规则,通过这些规则的灵活使用,我们可以把一种复杂的匹配需求用一个规则串表达出来!
2. 这个java的正则表达式怎么写
要用到正则表达式的逆序环视(不管你是不是第一次听说,反正我是第一次听说……),示例代码如下(注:你那个value="hhhh"的双引号用的是中文引号,我默认改成英文引号了,需要请自行修改) public static void main(String[] args) { String patternStr = "^form((?).)+value=\"hhhh\"((?).)+form$"; System.out.println("form value=\"hhhh\" form".matches(patternStr)); System.out.println("form value=\"hhhh\" form> form".matches(patternStr)); //有如下三个局限性,不过如果你这真是html,就不会遇到这种问题 //局限性1 中间如果只有form,无法排除,只能排除form> System.out.println("form value=\"hhhh\" form form".matches(patternStr)); //局限性3 后面一个form前面不能直接跟form>,中间起码要隔一个字符 System.out.println("form value=\"hhhh\" form>form".matches(patternStr)); //局限性3 value=\"hhhh\"前后不能直接跟form System.out.println("formvalue=\"hhhh\"form".matches(patternStr)); }至于原理,建议看下图中的那篇文章,说的比较详细,我就不转述了(搞不好我越说你越不懂- -)。
地址上图,另外在私信里面发给你,免得被判违规 。
3. java正则表达式怎么写
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class PatternDemo {
/**
* @param args
*/
public static void main(String[] args) {
String str = ",a b c,a,c";
Pattern pattern = Pattern.compile("a[^,]*c");
Matcher matcher = pattern.matcher(str);
while(matcher.find()){
System.out.println(matcher.group());
}
}
}
4. java中的正则表达式怎么写一个标签
public class Egg
{
public static void main(String[] args)
{
String html = "我想一只小小小小鸟
想要飞却飞呀飞不高~
我寻寻觅觅寻寻觅觅";
String regex = "(?i)
]*>";
html = html.replaceAll(regex, "
");
System.out.println(html);
}
}
5. JAVA中写邮箱格式的正则表达式,怎么写
合法E-mail地址:
1. 必须包含一个并且只有一个符号“@”
2. 第一个字符不得是“@”或者7a686964616fe58685e5aeb931333231613834“.”
3. 不允许出现“@.”或者.@
4. 结尾不得是字符“@”或者“.”
5. 允许“@”前的字符中出现“+”
6. 不允许“+”在最前面,或者“+@”
正则表达式如下:
-----------------------------------------------------------------------
^(\w+((-\w+)|(\.\w+))*)\+\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$
-----------------------------------------------------------------------
字符描述:
^ :匹配输入的开始位置。
\:将下一个字符标记为特殊字符或字面值。
* :匹配前一个字符零次或几次。
+ :匹配前一个字符一次或多次。
(pattern) 与模式匹配并记住匹配。
x|y:匹配 x 或 y。
[a-z] :表示某个范围内的字符。与指定区间内的任何字符匹配。
\w :与任何单词字符匹配,包括下划线。
$ :匹配输入的结尾。
6. java正则表达式",(
我举例说明:x(?=y)▲表示:右边紧跟y的x,但只包含x,不包含yx(?=y|z)▲表示:右边紧跟y或z的x,但只包含x,不包含y或zx(?!y)▲表示:右边不跟y的x,只包含x你的这个正则表达式完全正确:,(?=[^\"]+?\",|[^\"]+?\"$)▲它只匹配1个,▲▲但条件是:▲条件1▲:此,右边到第1个",之间有至少1个不是"的字符▲条件2▲:此,右边到结尾的"之间有至少1个不是"的字符举例说明:它匹配下面3行中的前2个,(每次匹配1个,而不是同时匹配前2个)x,y,z",x,y,,",x,y,z,"你要匹配这样的空格,只需把此式中的首个,换成空格即可: (?=[^\"]+?\",|[^\"]+?\"$)▲这可以处理你举的例子。
如果情况更复杂,请再举例,我继续帮你。
7. Java正则表达式或 写法
import java.util.regex.Matcher;import java.util.regex.Pattern;1.方法1:public class Test { public static void main(String[] args) throws Exception { String str="forM"; String regEx="form"; //表示a或f Pattern p=Pattern.compile(regEx,Pattern.CASE_INSENSITIVE); //表示整体都忽略大小写 Matcher m=p.matcher(str); boolean rs=m.find(); System.out.println(rs); }}//方法2:java正则表达式: (?i)abc 表示abc都忽略大小写 a(?i)bc 表示bc忽略大小写 a((?i)b)c 表示只有b忽略大小写。
8. Java中什么是正则表达式
众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。
因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段。 大 家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串。
正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 自从jdk1.4推出java.util.regex包,就为我们提供了很好的JAVA正则表达式应用平台。
转载请注明出处育才学习网 » java的正则表达式怎么写