欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

正则匹配

程序员文章站 2024-04-04 17:55:05
...
正则,匹配 1 基于数字图书馆的基本特征是()
A数字资源 B网络服务 C特色技术 D知识产权
参考答案:ABC

2 数字图书馆的学派包括()
A资源主导学派 B服务主导学派 C 信息学派 D技术主导学派三大学派
参考答案:ABD

3 资源主导学派以资源数字化为目标,借助一定的技术手段,不一定是最先进的,提供因特网浏览和检索()
正确
错误
参考答案:正确

请问要将这样的题目把每道题的题目和答案分别提取出来应该怎么做?有正则表达式的话要怎么匹配?

回复讨论(解决方案)

$s =Array  
(
[0] => 1 基于数字图书馆的基本特征是()
A数字资源 B网络服务 C特色技术 D知识产权
[1] => 2 数字图书馆的学派包括()
A资源主导学派 B服务主导学派 C 信息学派 D技术主导学派三大学派
[2] => 3 资源主导学派以资源数字化为目标,借助一定的技术手段,不一定是最先进的,提供因特网浏览和检索()
正确
错误
)
Array
(
[0] => ABC
[1] => ABD
[2] => 正确
)

1.你这个是纯文本还是html显示的?如果是html要给出源代码
2.要通用正则还是只针对这个文本?通用正则指题目内容及数量可变
3.你说的答案指的是“参考答案”还是选择枝?

preg_match_all('#(?:\A|\n\n)\d+ (.+)\n[\s\S]+参考答案:(.+)#', $string, $m);

没测试,自行测试

请问我如果想同时匹配出题目 选项 答案 又应该怎么写?

问题和选项之间只有换行符可识别,如果不确定问题只有一行的话,恐怕只能人工识别
preg_match_all('#(?:\A|\n\n)\d+ (.+)\n([\s\S]+)\n参考答案:(.+)#', $string, $m);
这个只适合问题只有一行,也是自行测试吧,我这没php环境

相关标签: 正则匹配