早教吧作业答案频道 -->数学-->
求一正则表达式匹配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矩阵...的网友还看了以下:
1994年圣彼得堡数学奥林匹克(初中)题给定一个15位数,它的各位数字都是0和1,该数能被81整除 2020-04-06 …
某纯棉细平布的规格为21×19.5×267.5×275.5×137,匹长为33m,请计算:1.经纬 2020-06-15 …
求如何把年份范围限制为1994-9999的正侧表达式?年份范围为0001-9999,匹配YYYY的 2020-06-20 …
将表一、表二、表三、表四的面积匹配到总表里的面积下面这个公式只匹配了其中的两个表,还需要再加两个表 2020-06-22 …
1,0,-1,0,1,0,-1,0.数列的通项公式 2020-06-25 …
某商店七、八月份出售某一品牌各种规格的空调台数如下表:规格1匹1.2匹1.5匹2匹七月20台45台 2020-07-08 …
求匹配0-255的正整数正则表达式/(\d|([1-9]\d)|(1\d\d)|(2[0-4]\d 2020-07-19 …
某商店七、八月份出售某一品牌各种规格的空调台数如下表:规格1匹1.2匹1.5匹2匹七月20台45台3 2020-11-08 …
某商场三、四月份出售同一品牌各种规格的空调,销售台数如下表所示:月份1匹1.2匹1.5匹2匹三月12 2020-11-08 …
带圈实心数字符号。不用教我怎样弄那个符号==,我只要黑色的1-0数字符号。 2020-11-18 …