String words="我|问*题|haha|他的";//正则
String reg="要是有问题就说啊";//输入的字符串
怎么样做可以返回"问*题"?
String reg="要是有问题就说啊";//输入的字符串
怎么样做可以返回"问*题"?
解决方案 »
- 用Jbuilder制了一个窗体如何让两个数相加
- IO流中数据流DATAINPUTSTREAM允许程序按着计算机无关的风格读取JAVA原始数据怎么理解?
- 关于大花猫的问题,不好意思麻烦大家了,又有新发现!!!!!!!!!!
- 急求助!!!!!
- .net 做的系统可以修改成 java的吗?????????
- 关于IOException的一个问题?
- 新手再次提问,人笨真是没办法:(
- 刚刚入门JAVA,一个简单的小问题
- 问题多多,高手快来,现在我只能给25分
- java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establis
- 这段代码什么意思?比较简单
- JFrame中鼠标形状变为砂漏后,画面可用控件仍然可用。这是为什么?
我的问题是:当输入“我的问dskj题”时,怎么返回“问*题”?
源程序如下:
package test.csdn;import java.util.*;
import org.apache.regexp.*;public class Tools {
public static void main(String [] args) {
String inputStr = "要是有问题就说啊";
String patternStr = "我|问*题|haha|他的";
List result = Tools.applyPattern(patternStr, inputStr);
for(int i = 0; i < result.size(); i++) {
System.out.println((String) result.get(i));
}
}
public static List applyPattern(String patternStr, String inputStr) {
RE r = new RE(patternStr);
String [] strArray = patternStr.split("\\|");
ArrayList list = new ArrayList();
for(int i = 0; i < strArray.length; i++) {
RE re = new RE(strArray[i]);
if(re.match(inputStr)) {
list.add(strArray[i]);
}
}
return list;
}
}