早教吧作业答案频道 -->数学-->
求一正则表达式匹配N*N矩阵.例如:3阶1000100014阶1001010100100011要求:1.行列数都为N,N是变量.2.匹配数字"0""1""空格""换行"//^[01\r\n]*$这是我上一次求助过的答案.3.矩阵元素为个位数
题目详情
求一正则表达式 匹配N*N矩阵.
例如:
3阶
1 0 0
0 1 0
0 0 1
4阶
1 0 0 1
0 1 0 1
0 0 1 0
0 0 1 1
要求:1.行列数都为N,N是变量.
2.匹配数字 "0" "1" "空格" "换行"//^[01 \r\n]*$这是我上一次求助过的答案.
3.矩阵元素为个位数0或1,矩阵元素之间必须有空格.
因为对正则表达式不熟悉,表达不对或幼稚的地方,请见谅.
例如:
3阶
1 0 0
0 1 0
0 0 1
4阶
1 0 0 1
0 1 0 1
0 0 1 0
0 0 1 1
要求:1.行列数都为N,N是变量.
2.匹配数字 "0" "1" "空格" "换行"//^[01 \r\n]*$这是我上一次求助过的答案.
3.矩阵元素为个位数0或1,矩阵元素之间必须有空格.
因为对正则表达式不熟悉,表达不对或幼稚的地方,请见谅.
▼优质解答
答案和解析
上次那个就是我写的,看来不太好使,呵呵.
首先说明一点,正则本身没有计数的功能,所以没办法根据列数去限定行数.
我觉得可以这样解决:
正则本身匹配由 "0" "1" "空格" "换行"按你要求的方式组成的矩阵,行列数则用程序指定.
^([01]( [01]){N-1})((\r?\n)([01]( [01]){N-1})){N-1}$
上面这个正则匹配满足你要求的N阶矩阵,根据需要用程序控制正则中N-1的值即可.
如:
^([01]( [01]){3})((\r?\n)([01]( [01]){3})){3}$
能匹配你例子中的4阶矩阵.
首先说明一点,正则本身没有计数的功能,所以没办法根据列数去限定行数.
我觉得可以这样解决:
正则本身匹配由 "0" "1" "空格" "换行"按你要求的方式组成的矩阵,行列数则用程序指定.
^([01]( [01]){N-1})((\r?\n)([01]( [01]){N-1})){N-1}$
上面这个正则匹配满足你要求的N阶矩阵,根据需要用程序控制正则中N-1的值即可.
如:
^([01]( [01]){3})((\r?\n)([01]( [01]){3})){3}$
能匹配你例子中的4阶矩阵.
看了 求一正则表达式匹配N*N矩阵...的网友还看了以下:
设a为三阶矩阵,有特征值λ1,λ2,λ3,其对应的特征向量分别是ξ1=[1,0,0],ξ2=[1, 2020-04-13 …
matlab 矩阵内的元素判断问题我想设计一个矩阵来得知每列为0的栏位如下id A B C D E 2020-05-16 …
大家快来看看这几道题怎么简算!我急用!0.071*1234+0.71*567.6+7.1*23.4 2020-05-16 …
ansys直接建立有限元模型问题finish/clear/prep7n,1,0,0,0n,2,0, 2020-05-17 …
设在区间[0,1]上f''(x)>0,则f'(0)f'(1)和f(1)-f(0)的大小顺序是设在区 2020-06-08 …
计算(0.1+0.12+0.123+0.1234)×(0.12+0.123+0.1234+0.12 2020-06-14 …
钢材规格1.0*1*2/4*8/c是什么意思啊?不锈钢板规格表1.0*1*2/4*8/C4.0-6 2020-07-09 …
按照找出的规律计算0.1+0.3+0.5+0.7+...+201.1+201.3等于多少?观察下面 2020-07-26 …
(0.1*0.1+0.2*0.2+0.3*0.3+0.4*0.4)的平方/(0.1*0.1*0.1 2020-07-31 …
△=0,△<0时一元二次方程ax2+bx+c=0(a>0)的根根需要用字母代表出来△>0,△=0,△ 2020-12-27 …