×

正则表达式菜鸟教程 字符

正则表达式r[0-9](3)能匹配出以下哪个字符串?PHP 数组和字符串互相转换实现方法~呢

admin admin 发表于2022-05-21 10:35:07 浏览132 评论0

抢沙发发表评论

正则表达式r[0-9](3)能匹配出以下哪个字符串


假定您写的这个正则表达式语法上正确,那么有一个小问题:()代表一个子表达式,()本身不匹配任何东西,也不限制匹配任何东西,只是把括号里的东西作为同一个表达式来处理,例如(ab){1,3}这个正则表达式,指的是ab一起连续出现最少1次、最多3次;如果去掉括号就是ab{1,3},指的是a后面紧跟的b出现最少1次,最多3次。

所以您给出的正则表示里的(3),完全可以去掉括号,那整个正则就简化成r3了。然后再分析语法:

  • r:匹配正常的英文字母r

  • :匹配0到9之间、包含0和9的任意一个数字

  • 3:匹配正常的数字3

于是,整个r3的正则表达式能匹配的所有字符串就是:r03、r13、r23、r33、r43、r53、r63、r73、r83、r93。

更多关于正则表达式的入门知识,请参考《菜鸟教程的正则表达式》一章。


PHP 数组和字符串互相转换实现方法~呢


PHP 中由于数组和字符串这两种变量类型是如此常用,以至于 PHP 具有两个函数,可以在字符串和数组之间互相进行转换
代码如下:

$array=explode(separator,$string);
$string=implode(glue,$array);

使用和理解这两个函数的关键之处是分隔符(separator)和胶合符(glue)关系。当把一个数组转换成一个字符串时,将会设置胶合符——将被插入到生成字符串中的数组值之间的字符或代码。

相反,当把字符串转换成数组时,要指定分隔符,它用于标记什么应该变成独立数组元素。例如,以字符串开始:
  $s1=’Mon-Tue-Wed-Thu-Fri’;
  $days_array=explode(’-’,$s1);
  $days_array 变量现在是一个有5个元素的数组,其元素 Mon 的索引为0,Tue 的索引为1,等等。
  $s2=implode(’,’,$days_array);
  $s2
变量现在是一个用逗号分隔的一个星期中各天的列表:Mon,Tue,Wed,Thu,Fri
-正则表达式菜鸟教程

1040: 打印字母塔 1112: 字符图形11-字母正三角 1208: 数字走向I 1209: 数字走向II


希望对你有帮助

1040。。。

import java.util.*;

class Main

{

public static void main(String args)

{

Scanner sc = new Scanner(System.in);

int n = sc.nextInt();

char c = 64;

char x = 66;

int m = 0;

for (int i = 1; i 《= n; i++)

{

m = i;

while (m》0)

{

m--;

c++;

}

for (int k = 1; k 《= n-i; k++)

{

System.out.print(“ “);

}

for (int j = 1; j 《= i; j++)

{

System.out.print(c);

c--;

}

for (int p = 1; p 《 i; p++)

{

System.out.print(x);

x++;

}

x=66;

System.out.println();

}

}

}


1112


import java.util.*;

class Main

{

public static void main(String args)

{

Scanner sc = new Scanner(System.in);

int n = sc.nextInt();

char c = 65;

for (int i = 1; i 《= n; i++)

{

for (int k = 1; k 《= n-i; k++)

{

System.out.print(“ “);

}

for (int j = 1; j 《= i*2-1; j++)

{

System.out.print(c);

c++;

}

c = 65;

System.out.println();

}

}

}