给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。
示例 1:
输入: “Let’s take LeetCode contest”
输出: “s’teL ekat edoCteeL tsetnoc”
注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格
方法1
var reverseWords = function (s) {
return s.split(' ').map(item => {
return item.split('').reverse().join('')
}).join(' ')
}
方法2
var reverseWords2 = function (s) {
return s.split(/\s/g).map(item => {
return item.split('').reverse().join('')
}).join(' ')
}
方法3
//match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
// 匹配一个单字字符(字母、数字或者下划线)。等价于 [A-Za-z0-9_]。
// 例如, /\w/ 匹配 "apple," 中的 'a',"$5.28,"中的 '5' 和 "3D." 中的 '3'。
// ' 代表有可能单词中有', +匹配前面一个表达式 1 次或者多次。等价于 {1,}。
var reverseWords3 = function (s) {
return s.match(/[\w']+/g).map(item => {
return item.split('').reverse().join('')
}).join(' ')
}