javascript 下常用的字符串操作

来源:互联网 发布:matlab优化函数 编辑:程序博客网 时间:2024/06/05 10:19

阅读原文

indexOf() 检索字符串

var str = "abac_dfra_wa"; console.log(str.indexOf('ac')); //输出2

lastIndexOf() 从后向前搜索字符串

var str = "abac_dfra_wa";console.log(str.lastIndexOf('ac')); //输出2

split() 把字符串分割为字符串数组

"|a|b|c".split("|") ////将返回["", "a", "b", "c"]"How are you doing today?".split(" ",3) //返回 How,are,you"hello".split("")   //可返回 ["h", "e", "l", "l", "o"]

slice() 提取字符串的片断,并在新的字符串中返回被提取的部分

var str="Hello happy world!"console.log(str.slice(6)); //输出happy world!console.log(str.slice(6, 11)); //输出happy

replace() 替换与正则表达式匹配的子串

var str="Hello WoRlD!"console.log(str.replace(/WoRlD/, "World"));     // Hello World!var str="Hello WoRlD! "str += str;console.log(str.replace(/WoRlD/g, "World")); //替换所有, 输出:Hello World! Hello World! var str = "javascript Tutorial ";console.log(str.replace(/javascript/i, "JavaScript")); //确保匹配字符串大写字符的正确var name = "Doe, John";console.log(name.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1")); //将把 "Doe, John" 转换为 "John Doe" 的形式

search() 检索与正则表达式相匹配的值(大小写敏感),未找到输出-1。

var str="Hello World!"console.log(str.search(/World/)); //输出6var str="Hello World!"console.log(str.search(/world/i)); //忽略大小写的检索,输出6

match() 找到一个或多个正则表达式的匹配

var str="1 plus 2 equal 3"console.log(str.match('plus')); // plusconsole.log(str.match('st'));   // nullconsole.log(str.match(/\d+/g))  // [ '1', '2', '3' ]

charAt() 返回在指定位置的字符

var str = "abac_dfra_wa";console.log(str.charAt(3)); //输出 c

charCodeAt() 返回在指定的位置的字符的 Unicode 编码

var str = "abac_dfra_wa";console.log(str.charCodeAt(3)); //输出99

fromCharCode() 从字符编码创建一个字符串

console.log(String.fromCharCode(72,69,76,76,79)); //输出HELLO

concat() 连接字符串

var str = "abac_dfra_wa";console.log(str.concat('_000')); //输出abac_dfra_wa_000

判断一个单词是否是回文

function checkPalindrom(str) {      return str == str.split('').reverse().join('');}document.write(checkPalindrom(str))

统计一个字符串出现最多的字母

function findMaxDuplicateChar(str) {    if(str.length == 1) {    return str;  }  let charObj = {};  for(let i=0;i<str.length;i++) {    if(!charObj[str.charAt(i)]) {      charObj[str.charAt(i)] = 1;    }else{      charObj[str.charAt(i)] += 1;    }  }  let maxChar = '',      maxValue = 1;  for(var k in charObj) {    if(charObj[k] >= maxValue) {      maxChar = k;      maxValue = charObj[k];    }  }  return maxChar;}findMaxDuplicateChar(str); 

不借助临时变量,进行两个整数的交换

function swap(a , b) {    b = b - a;  a = a + b;  b = a - b;  return [a,b];}swap(a , b)

随机生成指定长度的字符串

function randomString(n) {    let str = 'abcdefghijklmnopqrstuvwxyz9876543210';  let tmp = '',      i = 0,      l = str.length;  for (i = 0; i < n; i++) {    tmp += str.charAt(Math.floor(Math.random() * l));  }  return tmp;}document.write(randomString(8))
原创粉丝点击