小编Rav*_*ore的帖子

为什么replaceAll("$","")不工作虽然replace("$","")工作得很好?

import java.util.*;
import java.lang.*;
import java.io.*;
class GFG
{
public static void main (String[] args)
 {
       int turns;
     Scanner scan=new Scanner(System.in);
     turns=scan.nextInt();
     while(turns-->0)
     {
       String pattern=scan.next();
       String text=scan.next();
       System.out.println(regex(pattern,text));

      }
 }//end of main method
 static int regex(String pattern,String text)
 {
     if(pattern.startsWith("^"))
       {
           if(text.startsWith(pattern.replace("^","")))
           return 1;
       }
       else if(pattern.endsWith("$"))
       {
           if(text.endsWith(pattern.replace("$","")))
           return 1;
       }
       else
       {
          if(text.contains(pattern))
          return 1; 
       }
       return 0;
 }
}
Run Code Online (Sandbox Code Playgroud)

输入:2或$ hodor或$ arya

输出:1 0

在这个程序中,我正在扫描两个参数(String),其中第一个是模式,第二个是我必须找到模式的文本.如果模式匹配,方法应该返回1,否则返回0.虽然使用替换它工作正常但是当我将replace()替换为replaceAll()时它没有按预期正常工作.如何使replaceAll()在此程序中工作.

java string replace replaceall

1
推荐指数
1
解决办法
633
查看次数

标签 统计

java ×1

replace ×1

replaceall ×1

string ×1