早教吧作业答案频道 -->数学-->
求一正则表达式匹配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矩阵...的网友还看了以下:
关于一元三次方程的解法疑点这是网上看到的一种解法:对ax^3+bx^2+cx+d=0(1)令y=x 2020-05-14 …
已知下列n(n为正整数)歌关于X的一元二次方程X^2-1=0----1X^2+X-2=0----2 2020-06-02 …
若M={x|xˆ2-2x-3〉0},N={x|xˆ2+ax+b≤0,若M∪N=R,M∩N=(3,4 2020-07-09 …
如何用fortran将所有数据都减去同一个数同时按原格式输出呢?例如:对于11.1(n个1)22. 2020-07-22 …
帮忙看个程序:需要输入一个班全体学生的成绩,把不及格的学生成绩输出,并求及格学生的平均成绩.#in 2020-07-23 …
如图,一枚棋子放在七角形棋盘的第0格,现在以逆时针方向移动棋子,且第一步走一个一格,第二步走2格, 2020-07-30 …
求“当Y>0,N=42-3*Y;当-5≤Y≤0,N=45-|(Y+3)|;当Y<-5,N=43+2* 2020-11-01 …
先阅读,再解决问题,例题:若m2+2mn+2n2-6n+9=0,求m和n的值.(1)若x2+2y2- 2020-11-03 …
离散数学--阿克曼函数已知阿克曼函数A:N*N-->N的定义为:(1)A(0,n)=n+1,n>=0 2020-12-08 …
求告诉一道数学题怎么做是一道联赛的试题,是3*9个小方格组成的大方格,m*n(m小于等于3大于等于0 2020-12-19 …