`
louisnan
  • 浏览: 27022 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

String replace

阅读更多
定义和用法

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
语法

stringObject.replace(regexp,replacement)
参数	描述
regexp	必需。规定了要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
replacement	必需。一个字符串值。规定了替换文本或生成替换文本的函数。
返回值

一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。
说明

字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。
replacement 可以是字符串,也可以是函数。如果它是字符串,那么没有匹配都将由字符串替换。但是 replacement 中的 $ 字符具有特定的含义。如下表所示,它说明从模式匹配得到的字符串将用于替换。
字符	替换文本
$1、$2、...、$99	与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。
$&	与 regexp 相匹配的子串。
$`	位于匹配子串左侧的文本。
$'	位于匹配子串右侧的文本。
$$	直接量符号。
注意:ECMAScript v3 规定,replace() 方法的参数 replacement 可以是函数而不是字符串。在这种情况下,每个匹配都调用该函数,它返回的字符串将作为替换文本使用。该函数的第一个参数是匹配模式的字符串。接下来的参数是与模式中的子表达式匹配的字符串,可以有 0 个或多个这样的参数。接下来的参数是一个整数,声明了匹配在 stringObject 中出现的位置。最后一个参数是 stringObject 本身。
实例

例子 1

在本例中,我们将使用 "W3School" 替换字符串中的 "Microsoft":
<script type="text/javascript">

var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/, "W3School"))

</script>
输出:
Visit W3School!
例子 2

在本例中,我们将执行一次全局替换,每当 "Microsoft" 被找到,它就被替换为 "W3School":
<script type="text/javascript">

var str="Welcome to Microsoft! "
str=str + "We are proud to announce that Microsoft has "
str=str + "one of the largest Web Developers sites in the world."

document.write(str.replace(/Microsoft/g, "W3School"))

</script>
输出:
Welcome to W3School! We are proud to announce that W3School
has one of the largest Web Developers sites in the world.
例子 3

您可以使用本例提供的代码来确保匹配字符串大写字符的正确:
text = "javascript Tutorial";
text.replace(/javascript/i, "JavaScript");
例子 4

在本例中,我们将把 "Doe, John" 转换为 "John Doe" 的形式:
name = "Doe, John";
name.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1");
例子 5

在本例中,我们将把所有的花引号替换为直引号:
name = '"a", "b"';
name.replace(/"([^"]*)"/g, "'$1'");
例子 6

在本例中,我们将把字符串中所有单词的首字母都转换为大写:
name = 'aaa bbb ccc';
uw=name.replace(/\b\w+\b/g, function(word){
  return word.substring(0,1).toUpperCase()+word.substring(1);}
  );
分享到:
评论

相关推荐

    delphi 自带 StringReplace 慢, 替换 StringReplace ,高效率,秒杀 原版

    delphi 自带 StringReplace 慢, 替换 StringReplace ,高效率,秒杀 原版

    Delphi字符串快速替换函数,速度超快 秒杀自带的StringReplace函数

    内置的`StringReplace`函数虽然提供了基本的替换服务,但在处理大量数据或长字符串时,其性能可能不尽人意。针对这种情况,开发人员经常寻找更高效的替代方案,如在本案例中提到的“Q_Replace.pas”文件所包含的快速...

    Arduino项目开发 Strings_StringReplace_StringReplace.pdf

    在给定的文件"Strings_StringReplace_StringReplace.pdf"中,主要探讨了如何使用`String`类的`replace()`方法来替换字符串中的字符或子串。下面我们将详细讲解`replace()`函数及其在Arduino编程中的应用。 `String`...

    C++ 标准库string replace成员的几个用法

    `replace` 成员函数是 `std::string` 类中一个关键的方法,它允许程序员替换字符串中的子串或字符。本篇文章将详细讲解 `std::string` 的 `replace` 成员函数的几个常见用法。 1. **替换指定长度的子串** ```cpp ...

    C# String Replace高效的实例方法

    代码如下:[ThreadStatic] static char[] mTempChars; protected static char[] GetTempData() { if (mTempChars == null) mTempChars = ... } public static string Replace(string value, string oldData, stri

    Delphi fast Pos & StringReplace:搜索/替换(ansi)字符串,区分大小写,32 位和 64 位-开源

    StrPosDefs、StrPos32 和 StrPos64 这三个单元提供的函数是对 Delphi 中系统内置的 `system.pos` 和 `sysUtils.StringReplace` 的性能优化扩展。这些优化主要针对字符串搜索和替换操作,特别是在区分大小写和不区分...

    js中string之正则表达式replace方法详解

    replace方法是javascript涉及到正则表达式中较为复杂的一个方法,严格上说应该是string对象的方法。只不过牵扯到正则的时候比较多一些。需要我们灵活的使用。 语法: stringObj.replace(regexp/substr,replacement)...

    StringAPI.java

    String replace(CharSequence target, CharSequence replacement) String[] split(String regex) boolean contains(CharSequence s):当且仅当此字符串包含指定的 char 值序列时,返回 true int indexOf(String...

    java replace

    在Java编程语言中,`replace`方法是字符串(String)类的一个重要成员,用于替换字符串中的特定字符或子串。这个方法在处理文本数据时非常常用,尤其在我们需要替换某个字符或者模式时。下面我们将详细探讨`replace`...

    JsonToClientDataSet

    jsonSrc := StringReplace(jsonSrc, '[', '', [rfReplaceAll, rfIgnoreCase]); jsonSrc := StringReplace(jsonSrc, ']', '', [rfReplaceAll, rfIgnoreCase]); jsonSrc := StringReplace(jsonSrc, '"', '', ...

    replace-string:替换字符串中的所有子字符串匹配项

    替换字符串替换字符串中的所有子字符串匹配项与String#replace()类似,但支持替换多个匹配项。 通过将字符串放入带有全局标志的RegExp构造函数中并将其传递给String#replace() ,可以实现类似的效果,但是无论如何,...

    react-string-replace:一种使用React组件安全地进行字符串替换的简单方法

    $ npm install --save react-string-replace 用法 简单的例子 const reactStringReplace = require ( 'react-string-replace' ) reactStringReplace ( 'whats your name' , 'your' , ( match , i ) =&gt; ( &lt; span&gt; { ...

    Java的String类

    - 替换字符:`String replace(char oldChar, char newChar)` - 在字符串中替换所有旧字符为新字符。 - 去除空格:`String trim()` - 删除字符串两端的空白字符。 7. **数据转换** - `static String valueOf...

    string-replace-async:异步String.prototype.replace()

    字符串替换异步知道如何等待的“ string” .replace()函数安装$ npm install string-replace-async用法let replaceAsync = require ( "string-replace-async" ) ;await replaceAsync ( "#rebeccapurple" , / # ( \...

    TCL培训教程(全)

    - 示例:`string replace "string" start end "replacement"` ###### 8.5.11 string tolower - 将字符串转换为小写。 - 示例:`string tolower "STRING"` ###### 8.5.12 string toupper - 将字符串转换为大写。 ...

    Java中String类.pdf

    5. `public String replace(char oldChar, char newChar)`: 将所有出现的oldChar字符替换为newChar,返回新的字符串。 6. `public String substring(int beginIndex)`: 返回从指定开始索引到字符串末尾的新字符串。 ...

    CB2010下Roost正则表达式测试

    本话题聚焦于在CB2010环境下,利用Roost库进行正则表达式的测试,尤其是关注Regex替换与StringReplace替换的效率差异。 CB2010(可能是Code::Blocks 2010,一个开源的C++集成开发环境)提供了一个平台,开发者可以...

    Java中String类的方法及说明.pdf

    18. String replace(char oldChar, char newChar):用新字符newChar替换字符串中所有出现的旧字符oldChar。19. String replaceAll(String regex, String replacement):使用给定的replacement替换此字符串所有匹配...

Global site tag (gtag.js) - Google Analytics