gpt4 book ai didi

java - 如何转义java中正则表达式模式中的特殊字符?

转载 作者:行者123 更新时间:2023-12-02 03:45:49 27 4
gpt4 key购买 nike

我有一个字符串:

Patient:
${ss.patient.howard.firstName} ${ss.patient.howard.lastName}
Gender: ${ss.patient.howard.sex}
Birthdate: ${ss.patient.howard.dob}
${ss.patient.howard.addressLine1}
Phone: (801)546-4765

我正在尝试用其他字符串替换 ${..} 子字符串,使其看起来像:

Patient:
firstName lastName

Gender:sex
Birthdate: dob
addressLine1
Phone: (801)546-4765

最佳答案

您可以将此正则表达式与捕获组一起使用:

String myString = "Patient:\n${ss.patient.howard.firstName} ${ss.patient.howard.lastName}\nGender: ${ss.patient.howard.sex}\nBirthdate: ${ss.patient.howard.dob}\n${ss.patient.howard.addressLine1}\nPhone: (801)546-4765";
myString = myString.replaceAll("\\$\\{[^}]+?\\.([^.}]+)}", "$1");

System.err.println(myString);

([^.}]+)} 之前和最后一个 DOT 之后的捕获组。

RegEx Demo

输出:

Patient:
firstName lastName
Gender: sex
Birthdate: dob
addressLine1
Phone: (801)546-4765

关于java - 如何转义java中正则表达式模式中的特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36317913/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com