<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<title>live_exam</title>
</head>
<body>
<!-- <div>
<div style="float: left;width: 200px;margin-top: 20px; height: 100px; background: red"></div>
<div style="display: block;overflow: hidden; height: 400px; background: blue; margin-top: 50px"></div>
</div> -->
<div id="testId"></div>
</body>
<!-- <script src="./css/channel.js"></script> -->
</html>
<script type="text/javascript">
window.onload = function(){
var str = 'abcdefghijklmnhjkobnvcxz'
var arr = [[2,4],[6,8],[9,11],[20,21]]
var result = '';
for (var i=0; i <= arr.length-1; i++) {
console.log(arr.length-1,i)
if (arr.length > 1) {
if (i == 0) {
// console.log(1)
result += str.substring(0,arr[i][0]) + '<span style="color:red">' + str.substring(arr[i][0],arr[i][1] + 1) + '</span>'
//console.log(result)
} else if (i >0 && i< arr.length-1) {
//console.log(2)
result += str.substring(arr[i-1][1] + 1,arr[i][0]) + '<span style="color:red">' + str.substring(arr[i][0],arr[i][1] +1) + '</span>'
//console.log(result)
} else if (i == arr.length-1) {
//console.log(result)
//console.log(4)
result += str.substring(arr[i-1][1] + 1,arr[i][0]) + '<span style="color:red">' +str.substring(arr[i][0],arr[i][1] + 1) + '</span>' + str.substring(arr[i][1]+ 1)
}
} else {
result += str.substring(0,arr[i][0]) + '<span style="color:red">' + str.substring(arr[i][0],arr[i][1] + 1) + '</span>' + str.substring(arr[i][1]+ 1)
} }
document.getElementById('testId').innerHTML = result
//console.log(result)
}
var text = 'ad$$1a$$nihao$$67$$nihao$$'
var reg = /\$\$.*?\$\$/ig;
var arr = []
//var reg10 = /http(s)?:/ig;
//var str2 = text.replace(reg,'')
var str2 = text.replace(reg,function(exp){
console.log('-----------')
console.log(exp)
arr.push(exp)
//console.log(exp.replace(reg10,''))
//return exp.replace(reg10,'');
}) console.log(arr)
</script>

  

js实现根据文本下标位置添加特殊标识的更多相关文章

  1. js实现在光标的位置 添加内容

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  2. js之向div contenteditable光标位置添加字符

    js之向div contenteditable光标位置添加字符  原理: 在HTML里面,光标是一个对象,光标对象是只有当你选中某个元素的时候才会出现的. 当我们去点击一个输入框的时候,实际上它会产生 ...

  3. JS获取光标在input 或 texterea 中下标位置

    <textarea placeholder="请输入表达式" id="methodInput" ></textarea> 获取位置: v ...

  4. 2.22 JS处理富文本

    2.22 JS处理富文本 前言    <富文本>这篇解决了富文本上iframe问题,其实没什么特别之处,主要是iframe的切换,本篇讲解通过js的方法处理富文本上iframe的问题一.加 ...

  5. arcgis api 3.x for js 解决 textSymbol 文本换行显示(附源码下载)

    前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...

  6. Mysql下在某一列后即表的某一位置添加新列的sql语句

    Mysql简介 MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司.MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤 ...

  7. js 判断一个文本框是否获得焦点

    1.js 判断一个文本框是否获得焦点 // 可以用document.activeElement判断 // document.activeElement表示当前活动的元素   // 查找你要判断的文本框 ...

  8. 给定两个字符串 s 和 t,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加的字母。

    给定两个字符串 s 和 t,它们只包含小写字母.字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母.请找出在 t 中被添加的字母. 示例: 输入: s = "abcd" ...

  9. MongoDB "$" 字符 下标位置

    我们可以修改列表里面元素的名字 例如: 修改age=34的数据,hobby里面的"足球"改为"网球" }) { "_id" : Object ...

随机推荐

  1. 最近在学习python,做了一道人机大战的题目,分享一下,虽然可能有些麻烦,但是每个人思维是不同的。

    #题目如下:1:人和机器进行猜拳游戏写成一个类,首先选择角色:1 曹操 2张飞 3 刘备,然后选择的角色进行猜拳:1剪刀 2石头 3布 玩家输入一个1-3的数字 : 1 import random c ...

  2. [PA2015]Rozstaw szyn

    [PA2015]Rozstaw szyn 题目大意: 一棵\(n(n\le5\times10^5)\)个点的树,其中有\(m\)个结点是叶子结点.叶子结点权值已知,你可以自己决定其余结点的权值,定义整 ...

  3. SwipeableFlatList 实现类似于QQ列表滑动

    import React, { Component } from "react"; import { FlatList, RefreshControl, StyleSheet, T ...

  4. 3ds max学习笔记(十四)-- (FFD自由变形)

    FFD长方体,FFD圆柱体:   栗子2:通过对长方体进行自由编辑,松弛,和涡轮平滑的操作实现抱枕模型,抱枕表面的凹凸效果,可以通过贴图的方式来实现:

  5. sqlserver数据类型转换

    Insert into [Cet.4] Select CONVERT(VARCHAR(20),CONVERT(DECIMAL(20,7),F1)) FROM Sheet1$ 我从外部导入了一个学号表, ...

  6. python asyncio

    3. 真-官网文档    ----超级全 http://aiohttp.readthedocs.io/en/stable/client.html#make-a-request 2. 官网文档: htt ...

  7. Android CollapsingToolbarLayout使用介绍

    我非常喜欢Material Design里折叠工具栏的效果,bilibili Android客户端视频详情页就是采用的这种设计.这篇文章的第二部分我们就通过简单的模仿bilibili视频详情页的实现来 ...

  8. Kubernetes Ingress 学习

    Kubernetes 中暴露服务的方式有三种 Loadbalancer 这种方式往往需要云供应商支持,或者本地F5等设备支持 NodePort 这种方式调用方通过NodeIP:NodePort 的方式 ...

  9. ethtool 解决网卡丢包严重和网卡原理

      1 概述 最近业务上老有问题,查看发现overruns值不断增加,学习了一下相关的知识.发现数值也在不停的增加.发现这些 errors, dropped, overruns 表示的含义还不大一样. ...

  10. 如何确定一台linux主机是Linux (i386/i686)还是Linux (x86_64)

    在下软件包的时候,往往会遇到一个选择: 假设自己的主机是Linux,那么Linux (i386/i686)和Linux (x86_64)究竟应该选哪一个呢? 针对当今的硬件而言,如果你主机的CPU是6 ...