java - java高亮字符串中字符的方法
问题描述
由于我不是最聪明的人,我想知道在我用 Java 编写的最新方法上可以做些什么不同的事情。
此方法突出显示字符串中的某些字符,这些字符通过字符数组传递给方法,方法是将它们放在括号中。你将做点什么不同的?
static String highlightCharsInString(String arg1, char[] arg2) {
char[] arg1Char = arg1.toCharArray();
int arrLength = ((arg1Char.length) * 2) + arg2.length;
char[] hlChars = new char[arrLength];
int a, b = 0;
int y = 0;
boolean match=false;
//System.out.println(arg2.length);
for(a=0; a < arg1Char.length; a++) {
match=false;
for(b=0; b < arg2.length; b++) {
if (arg1Char[a] == arg2[b] && arg1Char[a] != ' ') {
match=true;
break;
}
}
if(match==true) {
hlChars[y] = '(';
y++;
hlChars[y] = arg1Char[a];
y++;
hlChars[y] = ')';
}
else {
hlChars[y] = arg1Char[a];
}
y++;
}
String hlCharsString = new String(hlChars);
return hlCharsString;
}
解决方案
我会做这样的事情,希望这会有所帮助!
static String highlightCharsInString(String text, char[] charsToHighlight) {
for (int i = 0; i < charsToHighlight.length; i++){
text = text.replaceAll(String.valueOf(charsToHighlight[i]), "(" + charsToHighlight[i] + ")");
}
return text;
}
推荐阅读
- c# - 在 C# 中使用 Harmon.ie SDK
- android - 如何使用 Kotlin 工具在 Android Studio 中指定从一种形式转换为另一种形式
- c++ - 将 HyperLedger Fabric 与 C++ 应用程序一起使用
- react-native - 具有动态资源的图像源上的 500 错误反应本机
- scala - 如何在 Idea IntelliJ 编辑器中使用 Scala Jackson 库执行基本 Json 馈送器
- nativescript - imageSourceModule.fromFile(path) 在 nativescript 中返回 null
- python - 在 Python 中循环遍历数据框的更优雅的方式
- deployment - 如何在 siddhi 应用程序中使用 deployment.yaml 变量?
- angular - Angular 7 - 创建 Angular 应用程序时出错
- amazon-web-services - How do I get the instance name of a Lightsail instance