如何在Java中将字符串绑定到对象

维韦克

我有这种格式的字符串(来自EBS Payment Gateway的回复)

key1=value1&key2=value2&key3=value3

如何不使用split方法绑定到此类对象?

public class MyClass {

    private String key1;
    private String key2;
    private String key3;
    // getter and setter methods
    ...
}
史蒂夫·P。
String template = "key1=value1&key2=value2&key3=value3";
String pattern = "&?([^&]+)="; 

Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(template);

while (m.find()) 
{
    System.out.println(m.group(1)); //prints capture group number 1
}

输出:

   key1
   key2  
   key3

当然,可以将其缩短为:

Matcher m = Pattern.compile("&?([^&]+)=").matcher("key1=value1&key2=value2&key3=value3");

while (m.find()) 
{
    System.out.println(m.group(1)); //prints capture group number 1
}

分解:

"&?([^&]+)="; 

&?:表示0或1&
[^&]+匹配1个或多个不等于等于&
([^&]+)捕获上述字符的字符(允许您提取它们)
&?([^&]+)=捕获上述字符,使得它们以0或1开头&并以结尾=

注意:即使我们没有排除=in [^&],该表达式仍然有效,因为如果它可以匹配带有=符号的任何内容,那么该字符串中也将带有'&',因此[^&=]是不必要的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在F#中将双引号绑定到字符串?

如何在视图中将字符串绑定到作用域var?

如何在Java中将给定字符串中的字符减少到回文

如何在Java中将任意字符与字符串对象分开

如何在 JavaScript 中将字符串转换为对象?

如何在Javascript中将字符串转换为对象?

如何在Flutter中将字符串转换为对象?

如何在Java中将字符串转换为日期对象

如何在Java中将对象数组转换为字符串数组

如何在Java中将对象转换为字符串

如何在Java中将以下字符串转换为日期或日历对象?

如何在Java中将字符串转换为Time对象?

如何在Java Spring中将对象转换为字符串

如何在Java中将字符串值转换为自定义模型对象?

如何在App Engine中将JSON字符串反序列化为Java对象

我们如何在Java中将字符串转换为用户定义的对象

如何在Java中将字符串转换为身份

如何在 Java 中将“<=”或“>=”从字符串转换为文字

如何在Java中将字符串转换为数值

如何在java中将文件读入字符串?

如何在Java中将字符串转换为InputStreamReader?

如何在Java中将InputStream转换为字符串?

如何在Java中将字符串转换为InputStream?

如何在Java中将char []转换为字符串?

如何在Java中将FileInputStream转换为字符串?

如何在Java中将字符串转换为SOAPMessage?

如何在Java中将字符串评估为数组?

如何在Java中将字符串反转

如何在java中将arrayList打印为字符串