java - 如何重新格式化字符串中的特定单词?
问题描述
我有这个代码序列来尝试格式化数学计算
//TODO add PI
final double PIE=Math.PI;
System.out.println(PIE);
String pieThing="2PI2PI";
System.out.println(pieThing);
//TODO check for indexes before a thing. Helpful for moving index line and Syntax check
if(pieThing.indexOf("PI")>0)
{
if(pieThing.charAt(pieThing.indexOf("PI")-1)=='2')//<--- This is annoying use a switch
{
StringBuilder pieThingBuilder=new StringBuilder(pieThing);
pieThingBuilder.insert(pieThing.indexOf("PI"),"*");
pieThing=pieThingBuilder.toString();
}
}
System.out.println(pieThing);
pieThing=pieThing.replace("PI",Double.toString(PIE));
System.out.println(pieThing);
但它只会运行一次,如果后面有 2,我如何让它检查、查找并将所有“PI”转换为“*”?
有没有更好的方法来做我想要完成的事情?
解决方案
推荐阅读
- java - 无法在 Jsch 中使用私钥/公钥
- docker - 当名称中包含空格的文件包含在 Docker 映像中时,Docker 推送失败
- amazon-redshift - convert_timezone 导致非空字段的数据丢失
- python-3.x - 使用 python 从 git 预提交钩子中检索参数
- angular - 在入口组件中使用指令
- amazon-web-services - Terraform EC2(根块设备加密错误未能达到目标状态)
- reactjs - 如何在没有 create-react-app 的情况下使用 create-react-library?
- json - 我正在尝试从 jmeter 中的 json 文件中提取键值
- r - 使用 R 提取以 .edu 结尾的网站
- spring-cloud - 如何配置 Spring Gateway 以进行正确路由