正则表达式实例

简介:

1,获取引号中的json字符串

Java代码   收藏代码
  1. @Test  
  2.     public void test_json(){  
  3.         String input="\"normalPrice\": \"{\"storagePrice\":66,\"ud1Price\":1,\"userPeriodPrice\":99}\",";  
  4.         System.out.println(input);  
  5.         String regex=".*\"\\{([^{}]*)\\}\".*";  
  6.         String result=input.replaceAll(regex, "$1");  
  7.         System.out.println(result);  
  8.     }  

 

 

2, 遇到的问题:

解决方法:

Java代码   收藏代码
  1. /*** 
  2.      * ("normalPrice": "{"storagePrice":66,"ud1Price":1,"userPeriodPrice":99}",) 
  3.      * to<br> 
  4.      * ("normalPrice": {"storagePrice":66,"ud1Price":1,"userPeriodPrice":99},) 
  5.      * @param input 
  6.      * @param isStrict : 是否严格,true:[^{}]<br> 
  7.      * false:.* 
  8.      * @return 
  9.      */  
  10.     public static String getJsonFromQuotes(String input,boolean isStrict){  
  11.         String regexLoose="\"(\\{.*\\})\"";  
  12.         String regexStrict="\"(\\{[^{}]*\\})\"";  
  13.         String regex=null;  
  14.         if(isStrict){  
  15.             regex=regexStrict;  
  16.         }else{  
  17.             regex=regexLoose;  
  18.         }  
  19.         String result=input.replaceAll(regex, "$1");  
  20.         return result;  
  21.     }  

  

参数说明:

isStrict:

(a)true:严格模式,"{和}" 之间不能包含{或}

(b)false:非严格模式:"{和}"之间可以包含任意字符

应用:

Java代码   收藏代码
  1. if (command.equals("unQuotesJson")) {  
  2.             String text = this.ta.getText();  
  3.             if(text!=null){  
  4.                 text=RegexUtil.getJsonFromQuotes(text, false);  
  5.                 this.ta.setText(text);  
  6.             }  

 

相关文章
|
5月前
|
Java 程序员
Java 异常处理与正则表达式详解,实例演练及最佳实践
在 Java 代码执行期间,可能会发生各种错误,包括程序员编码错误、用户输入错误以及其他不可预料的状况。 当错误发生时,Java 通常会停止并生成错误消息,这个过程称为抛出异常。 try...catch 语句 try 语句允许您定义一段代码块,并在其中测试是否发生错误。 catch 语句允许您定义一段代码块,当 try 块中发生错误时执行该代码块。 try 和 catch 关键字成对使用,语法如下:
89 0
|
5月前
|
机器学习/深度学习 存储 JavaScript
正则表达式基础语法与Java、JS使用实例
正则表达式基础语法与Java、JS使用实例
97 1
|
Java
Java正则表达式校验实例
Java正则表达式校验实例
77 0
|
3月前
|
Java
正则表达式在Java中的应用与实例
正则表达式在Java中的应用与实例
|
5月前
|
开发者 Python
Python中的正则表达式:re模块详解与实例
Python中的正则表达式:re模块详解与实例
212 0
|
Shell
shell中正则表达式中字符的应用具体实例以及详解
shell中正则表达式中字符的应用具体实例以及详解
127 3
34.从入门到精通:Python3 正则表达式检索和替换 repl 参数是一个函数 正则表达式对象 正则表达式修饰符 - 可选标志 正则表达式模式* 正则表达式实例
34.从入门到精通:Python3 正则表达式检索和替换 repl 参数是一个函数 正则表达式对象 正则表达式修饰符 - 可选标志 正则表达式模式* 正则表达式实例
|
Python
Python正则表达式匹配电话号码和邮箱实例演示,正则表达式的基本用法
Python正则表达式匹配电话号码和邮箱实例演示,正则表达式的基本用法
244 0
|
JavaScript 前端开发
JavaScript使用正则表达式进行邮箱表单验证实例
JavaScript使用正则表达式进行邮箱表单验证实例
88 0
|
C语言
【正则表达式】快速学习一个c语言的实例
【正则表达式】快速学习一个c语言的实例
143 0