Regex 如何使用正则表达式拆分字符串?

Regex 如何使用正则表达式拆分字符串?,regex,string,express,Regex,String,Express,我想知道如何使用正则表达式拆分字符串 e、 g 我的绳子在下面 String Temp = "/dev/sda 398G 4.9G 373G 2% /mnt/internal"; 我想将上面的字符串与组名和值分开 (组名)=(值) filestream=/dev/sda 尺寸=398G 已使用=5.8G 剩余=372G 使用%=2% 安装=/mnt/内部 如果有人知道如何将上面的字符串转换为正则表达式,请留下答案 提前谢谢你的回答 祝大家今天愉快 Javascript R

我想知道如何使用正则表达式拆分字符串

e、 g

我的绳子在下面

String Temp = "/dev/sda        398G  4.9G  373G   2% /mnt/internal";
我想将上面的字符串与组名和值分开

(组名)=(值)

filestream=/dev/sda

尺寸=398G

已使用=5.8G

剩余=372G

使用%=2%

安装=/mnt/内部

如果有人知道如何将上面的字符串转换为正则表达式,请留下答案

提前谢谢你的回答

祝大家今天愉快

Javascript RegEx afaik中没有“命名组”。 但你也可以用“正常”的群体来做。以下是正则表达式:

([\w\d/]+)\s+([\d\.G]+)?\s+([\d\.G]+)?\s+([\d\.G]+)?\s+(\d+%)\s+([\w\d/]+)
详情:

([\w\d/]+)       -> match group of "chars", "digits" and "/"
\s+              -> followed by at least on whitespace
([\d\.G]+)?      -> match shortest match of "digits", "." and "/" and char "G"
\s+              -> followed by at least on whitespace
([\d\.G]+)?      -> match shortest match of "digits", "." and char "G"
\s+              -> followed by at least on whitespace
([\d\.G]+)?      -> match shortest match of "digits", "." and char "G"
\s+              -> followed by at least on whitespace
(\d+%)           -> match "digits" followed by "%"
\s+              -> followed by at least on whitespace
([\w\d/]+)       -> match group of "digits", "chars" and "/"
之后,您可以访问与所需内容相对应的组1至6


您可以按空格拆分
var arr=str.split(/\s+/)
string.split(\\s+)
使用模式拆分
\\s+
是一个简单的解决方案,但是如果您想使用命名组方法,这里有一个示例:@NeverHopeless:这与我在C应用程序中使用的解析
df-h
输出的方法相同,它是JS,不支持命名捕获。