我想转换目录路径:
C:\Users\Host\Desktop\picture.jpg
Run Code Online (Sandbox Code Playgroud)
至
C:\\Users\\Host\\Desktop\\picture.jpg
Run Code Online (Sandbox Code Playgroud)
我正在使用replaceAll()函数和其他替换函数,但它们不起作用.
我怎样才能做到这一点?
我打印了声明,它给了我一个我想要的,即C:\ Users\Host\Desktop\picture.jpg但是现在当我传递这个变量来打开文件时,我得到这个例外的原因?
java.io.FileNotFoundException:C:\ Users\Host\Desktop\picture.jpg
我需要替换文本中的一些单词,但我需要在替换策略中添加条件如下:
我想用word2替换word1:
String word1 = "word1";
String word2 = "word2";
Run Code Online (Sandbox Code Playgroud)
但我不想替换word1,如果它前面是word3,它是:
String word3 = "word3."; //with the dot at the ending
Run Code Online (Sandbox Code Playgroud)
那就是如果文本是word3.word1我不想触摸它.但我似乎无法使用String的方法处理字边界.replaceAll
编辑:
如果word1的前缀或后缀为" - "字符,即-word1或word1-或-word1-,我也不想改变
任何帮助都会很明显.
我正试着转身a/b/c.x.y进去abc.但是我的正则表达式似乎存在问题,特别是'\\.*'.
"a/b/c.x".replaceAll( "/|\\.*", "" );
Run Code Online (Sandbox Code Playgroud)
收益率:
"abcx"
Run Code Online (Sandbox Code Playgroud)
任何见解都会很棒,谢谢!
String inputString = args[0];
String out2 = inputString.replaceAll("I", "you");
String out1 = out2.replaceAll("you", "I");
System.out.println(out1);
Run Code Online (Sandbox Code Playgroud)
以上是main方法中的代码.它应该代替"我"为"你"和"你"为"我",而是只的replaceAll后者调用()的作品(如,一个叫上OUT2).在运行时,我将第一个参数作为输入字符串设置为"我讨厌关于你的一切",它应该为你切换,反之亦然,而是输出"我讨厌关于我的一切".
有任何想法吗?
干杯
对不起,我不得不重新写这个问题,我正在完成它,有人关闭它.他们不善解释为什么我不得不重新发布?请告诉我什么是令人困惑的.
要点:我想用匹配的部分替换正则表达式匹配,所以如果我正则表达式我希望它替换为{hi}如果正则表达式匹配我想要替换为{at}
这真是太棒了看看这两个字母的单词得到了更换后的回报
this <h1>is</h1> awesome look <h1>at</h1> this two letter words get replaced
Run Code Online (Sandbox Code Playgroud)
注意是什么和匹配正则表达式\ b\w\w\b将匹配替换
这是我正在研究的代码...不要判断它没有完成,但我只是有点困惑,并想知道是否有一个更简单的方法.我正在搜索字符串并找到匹配项,然后我将把它转到一个arraylist并替换每一个.问题是我要替换的问题之一是{并且我想用{{}替换它现在看起来这将不断替换括号,因为我继续添加它们...所以我的另一个想法是将它们全部替换掉逐个char by char并添加到一个新StringBuilder对象?
ArrayList<String> replacements= new ArrayList<String>();
String s="::";
s+=command;
Pattern p= Pattern.compile("[!-~]");
Matcher match= p.matcher(this.execution);
while(match.find()){
replacements.add(match.group());
}
StringBuilder string= new StringBuilder();
for(int i=0;i<this.execution.length();i++){
String a=new String(execution.charAt(i));
if(...){
...
}
}
s+="::"+this.execution;
Run Code Online (Sandbox Code Playgroud) 有一个String text
System.out.println(text);看起来像这样
So the traveller sat down by the side of that old man,
face to face with the serene sunset;
and all his friends came softly back and stood around him.
Run Code Online (Sandbox Code Playgroud)
另一个 String subText
System.out.println(subText); 只是上述字符串的一部分,看起来像这样
So the traveller sat down by the side of that old man,
face to face with the serene sunset;
Run Code Online (Sandbox Code Playgroud)
我需要摆脱这subText部分,text = text.replaceAll(subtext, "");但这对文本没有任何作用?
我正在使用以下代码作为测试,以便稍后使用Twitter API时使用。
当我从流中获取tweet并将其存储在mySQL中时,如何删除主题标签以及所有尾随字符?(基本上省略了主题标签中的所有内容)
我可以使用replaceAll并传递“#”和“,”值,并将其替换为“”。它可以正常工作,并且输出在代码下面,但是我将如何使用它替换主题标签的所有内容,包括“ not”,“#not”?
public class replaceAllTest {
public static void main (String args[]){
String sampleString = "This game was amazing, #not";
System.out.println("Before: " + sampleString);
sampleString = sampleString.replaceAll("#", "");
sampleString = sampleString.replaceAll(",", "");
System.out.println("After: " + sampleString);
}
}
Run Code Online (Sandbox Code Playgroud)
上面代码的输出:
Before: This game was amazing, #not
After: This game was amazing not
Run Code Online (Sandbox Code Playgroud)
上面代码的预期输出:
Before: This game was amazing, #not
After: This game was amazing
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激,谢谢Z19
我有以下代码
String[] helloWorld = {"Hello", "World"};
System.out.println(Arrays.toString(helloWorld));
Run Code Online (Sandbox Code Playgroud)
打印
[Hello, World]
Run Code Online (Sandbox Code Playgroud)
我需要删除空格和[].并获得以下价值.
Hello,World
Run Code Online (Sandbox Code Playgroud)
我这是helloWorld.replaceAll("\\s+","")为了删除空格,但我如何删除括号.
var params = ['tom' , 'harry'];
var string = 'hello $1 and $2 how aa are you $1 and $2';
Run Code Online (Sandbox Code Playgroud)
我尝试了什么
var params = ['tom' , 'harry'];
var string = 'hello $1 ,$2 how aa are you $1 , $2';
var temp;
for(var i = 0; i<params.length ; i++)
{
temp = string.replace(/[$1]+/g,params[i]);
}
Run Code Online (Sandbox Code Playgroud)
Firefox控制台错误输出:“你好哈里,harry2哈里,你好吗,哈里2”
最终输出:你好汤姆和哈利你好吗汤姆和哈利
我想用正则表达式(正则表达式)做什么基本上与此请求相反.
我目前使用此模式创建与URL兼容的文件名:
String new_file_name = old_file_name.replaceAll("[^a-zA-Z0-9._]+", "_");
Run Code Online (Sandbox Code Playgroud)
如果有例如示例
String old_file_name = "!§$%&{}[]()=´´```_lol_á_^_°.PNG";
Run Code Online (Sandbox Code Playgroud)
那么new_file_name将是以下模式: __lol______.PNG
但是,我希望以不同的方式.这个正则表达式模式通过一个下划线删除整个连续的特殊字符行,但我希望该模式用自己的下划线替换每个特殊字符的单个事件,这将给我这个结果:
__________________lol______.PNG
Run Code Online (Sandbox Code Playgroud)
有没有办法用正则表达式实现这一目标?
回答后编辑:
谢谢你们的精彩回答!真的帮到了我很多!为了完整起见,我想为您提供我笨重而笨拙的代码片段,我用它来表达相同的结果,就像你说的正则表达式:
for(int i = 0; i < old_file_name.length(); i++)
{
// if it is a letter, a number, a underscore or a dot
if( (((int)old_file_name.charAt(i) > 47) && ((int)old_file_name.charAt(i) < 58 )) ||
(((int)old_file_name.charAt(i) > 64) && ((int)old_file_name.charAt(i) < 91 )) ||
(((int)old_file_name.charAt(i) > 96) && ((int)old_file_name.charAt(i) < 123 )) ||
((int)old_file_name.charAt(i) == 95) ||
((int)old_file_name.charAt(i) == 46) ) …Run Code Online (Sandbox Code Playgroud) replaceall ×10
java ×9
regex ×6
string ×3
hashtag ×1
javascript ×1
matcher ×1
replace ×1
str-replace ×1