js使用正则表达式获取字符串中特定的字符

  1. 需求:从124fddr323532${xxxasdsafxx}253${bnm}23354${abcd}233545xx54${666}233545xxxxx这类字符串中获取${}中的内容。注意${xxx}的个数是不确定的。

使用了match和exec两种方式实现,直接上代码(更推荐第二种):

   function getMatchedStrs (str) {
        var reg = /\$\{(.+?)\}/
        var reg_g = /\$\{(.+?)\}/g
        var result = str.match(reg_g)
        var list = []
        for (var i = 0; i < result.length; i++) {
            var item = result[i]
            list.push(item.match(reg)[1])
        }
        return list
    }
   function getExecStrs (str) {
        var reg = /\$\{(.+?)\}/g
        var list = []
        var result = null
        do {
            result = reg.exec(str)
            result && list.push(result[1])
        } while (result)
        return list
    }

原文地址:https://www.cnblogs.com/xiaohaifengke/p/11421208.html

时间: 2024-08-29 01:00:44

js使用正则表达式获取字符串中特定的字符的相关文章

iPhone开发--正则表达式获取字符串中的内容

缘起: 想获取字符串中指定的字符,考虑用正则表达式,遂写了如下的代码: [cpp] view plaincopy NSString *htmlStr = @"oauth_token=1a1de4ed4fca40599c5e5cfe0f4fba97&oauth_token_secret=3118a84ad910967990ba50f5649632fa&name=foolshit"; NSString *regexString = @"oauth_token=(\

【SQL Server 学习系列】-- 获取字符串中出现某字符的次数及字符某次出现的下标

DECLARE @Str NVARCHAR(500) = '1_BB_CC_DD_AA_EE_YY_WW_HH_GG' --// 1. 获取下划线在字符串中出现的次数 SELECT LEN(@Str) - LEN(REPLACE(@Str, '_', '')) --// 2. 获取下划线某次出现的位置下标 IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[IndexNumOfStr]') AND t

C++删除字符串中特定的字符

原文:https://snipt.net/aolin/c-6/ //处理string类型的方法del_sp(string &str)待测试 //处理C-Style的方法可用,可以考虑将该方法改写为void del_ch(char *src , char ch),使其更加通用化. #include <iostream> #include <string> using namespace std; void del_sp(char *src); // 删除C风格字符串中的空格

[Python3 练习] 010 找出字符串中特定的字符

题目:找出藏在字符串中的"密码" (1) 描述 1) 题源1 鱼 C 论坛中"小甲鱼"老师出的题 链接地址:第020讲:函数:内嵌函数和闭包 | 课后测试题及答案 2) 题源2 这几日挺巧的 在鱼 C 论坛上找 Python 习题,点开第 20 节,看到两道操作题 又想起一个网站 Python Challenge ,久闻其名,未曾拜访,遂一探究竟 原来小甲鱼老师第 20 节的两道操作题改编自 Python Challenge 的 level2 与 level 3 2

C#经典笔试题-获取字符串中相同的字符以及其个数

本文来自:http://www.cnblogs.com/kejie/p/5971773.html public Dictionary<char,int> GetStrSameAs(string str){ //将字符串转换成一个字符数组. char[] charArray=str.ToCharArray(); //定义一个字典用,其中的键key作为取出的字符,值value作为对应字符的个数. Dictionary<char,int> dic=new Dictionary<ch

JS 通过正则表达式获取URL中的参数

var getUrlParameter = function(name){     var locString = document.location.search;       var reg = new RegExp("(\\?|\\&)" + name + "=([^\\&]*)(\\&?)", "i").exec(locString);       return RegExp.$2; }

ios 开发中获取字符串中重复的字符的rang

iOS 开发中经常会遇到处理字符串的问题,对于一个字符串经常会遇见里面包含重复的字符需要对重复的字符进行处理,下面的代码就是对重复字符进行处理的操作,具体代码如下所示: /** * 返回重复字符的location * * @param text 初始化的字符串 * @param findText 查找的字符 * * @return 返回重复字符的location */ - (NSMutableArray *)getRangeStr:(NSString *)text findText:(NSStr

iOS 获取字符串中的单个字符

要取到单个字符,就要知道字符串的编码方式,这样才能够定位每个字符在内存中的位置.但是,iOS的字符串编码是不固定的,因此,需要设置一个统一的编码格式,将所有其他格式的字符串都转化为统一的格式,然后就可以根据编码规则取到单个字符了.在这里,使用UTF-8编码.UTF-8编码的使用范围比较广泛,客户端与服务器之间传输的数据大多以UTF-8编码. 关于UTF-8的详细说明可以Wiki下:UTF-8. 下图是UTF-8编码的格式: 开发的流程大概是: 将NSString字符串转成UTF-8格式的char

js 查找一串字符串中一段字符

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript"> window.onload = function (){ var oP = document.getElementsByTagN