用正则表达式把试题内容及ABCD选项拆分出来,并存入数据库,怎么实现?
用正则表达式把试题内容及ABCD选项拆分出来,并存入数据库相应的字段,怎么实现? 正则表达式 数据库
[解决办法]
你的模型是如何对应的?怎么还要拆分?
[解决办法]
你的内容和ABCD是个什么样的组合方式都没说,拆分给个例子呗
[解决办法]
题目表:
题目ID 内容
选项表:
选项A 选项B 选项C 选项D 题目ID
[解决办法]
input.split("[A
[解决办法]
B
[解决办法]
C
[解决办法]
D]、");
public class Test {
static String input = "1、下列属于负责制定统一的支付结算法律制度的是( )。"
+ "A、中国人民银行总行"
+ "B、中国银行总行"
+ "C、国家政策性银行"
+ "D、商业银行总行"
+ "正确答案:A";
public static void main(String[] args) {
String regex = "[A-D]、
[解决办法]
正确答案:";
System.out.println(input.split(regex)[0]);
System.out.println(input.split(regex)[1]);
System.out.println(input.split(regex)[2]);
System.out.println(input.split(regex)[3]);
System.out.println(input.split(regex)[4]);
System.out.println(input.split(regex)[5]);
}
}
package test0320;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
public class TopicStorage {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
File file = new File("E:\\test\\topic.txt");
String sbf[][] = new String[100][6];
try {
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(file)));
String str = null;
int i = 0;
int j = 0;
while ((str = br.readLine()) != null) {
if ("".equals(str.trim()))//空行跳到下行
continue;
if (j < 5) {// 题目和选项
sbf[i][j] = str.substring(2);// 可以写成 str.substring(str.lastIndexOf("、"))
}
if (j == 5) {//答案
sbf[i][j] = str.substring(8);//同理str.substring(str.lastIndexOf(":"))
}
j++;
if (j == 6) {
i++;
j = 0;
}
}
for (int x = 0; x < 100; x++) {
for (int y = 0; y < 6; y++) {
System.out.println("++++++++++++ " + sbf[x][y]);
/***
* 调用插入数据库的方法 sbf[x][y]
*/
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}