regex - 如何从字符串中获取第二个和第四个字符

标签 regex string bash substring cut

我有一个脚本可以通过电子邮件将网站的数据库信息发送给我。但是,我需要在我的 bash 脚本中获取域名的第二个和第四个字符作为两个变量。

目前获取二级域名的方法如下

DOMAINNAME=`echo ${NEW_DOMAIN_NAME} | grep -oE '/[^/]+' | cut -c6- | rev | cut -c4- | rev`

但现在我需要获取该字符串 $DOMAINNAME 的第二个和第四个字符

有什么想法吗?

最佳答案

使用 bash 变量,您可以这样做:

DOMAINNAME=abcdef
CHAR2=${DOMAINNAME:1:1}
CHAR4=${DOMAINNAME:3:1}
echo "char2=$CHAR2, char4=$CHAR4"

给出:

char2=b, char4=d

解释

这句话的意思:${DOMAINNAME:3:1}意思是:从位置3的字符开始取子串(从0开始,所以是第4个字符),长度= 1个字符.

关于regex - 如何从字符串中获取第二个和第四个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23243650/

相关文章:

Java - string.split 与冲突的正则表达式

javascript - 正则表达式查找和替换冒号内的表情符号名称

javascript - 将数组转成字符串,用分隔符分隔字符串 - JavaScript

bash - 从 bash 脚本中将参数传递给 Octave 函数

bash - 如何转义变量中的特殊字符以在 bash 中提供命令行参数

r - 使用 R 中的 stringi 提取字符串中某些字符之后的多个子字符串

javascript 正则表达式来检测内联 javascript 还是外部脚本

c++ - 如何使用小端格式在字符串中表示十六进制地址?

javascript - 使用变量全局替换字符串

linux - Bash 脚本在本地工作,但不能通过 ssh。想法为什么?