String X是String Y Java的子序列

use*_*802 1 java subsequence

问题复制自https://codegolf.stackexchange.com/questions/5529/is-string-xa-subsequence-of-string-y

T给定字符串X和Y,确定X是否是Y的子序列.空字符串被视为每个字符串的子序列.(例如,''和'anna'是'香蕉'的后续序列.)

他们的任何函数是否已经在Java或一些常见的库中执行此操作?

输入

X,可能为空的区分大小写的字母数字字符串Y,可能为空的区分大小写的字母数字字符串输出

真或假(或等价物),正确指示X是否是Y的子序列.I/O示例

  • '''z00'真的
  • 'z00''z00'真的
  • 'z00''00z0'错误
  • 'aa''anna'真的
  • 'anna''香蕉'真的
  • '安娜''香蕉'错了

ben*_*y23 7

您可以使用正则表达式来检查序列是否包含在搜索字符串中(并使用替换来将搜索字符与通配符交错.*):

     String x = "anna";
     String y = "banana";
     x = x.replace("", ".*");  //returns .*a.*n.*n.*a.*

     System.out.println(y.matches(x));  // returns true
Run Code Online (Sandbox Code Playgroud)