代码拉取完成,页面将自动刷新
{smcl}
{* 01feb2017}{...}
{cmd:help mata mm_regexr()}
{hline}
{title:Title}
{pstd}
{bf:mm_regexr() -- Regular expression replace}
{title:Syntax}
{p 8 27 2}
{it:string matrix}
{cmd:mm_regexr(}{it:string matrix s}{cmd:,} {it:string matrix from}{cmd:,}
{it:string matrix to}{cmd:)}
{title:Description}
{pstd}
{cmd:mm_regexr()} returns the result of replacing the
first substring within {it:s} that matches {it:from} with {it:to}, where
{it:from} is a
{browse "https://en.wikipedia.org/wiki/Regular_expression":regular expression}. If
{it:s} contains no string that matches the regular expression {it:from},
the unaltered {it:s} is returned. In contrast to Stata's official
{helpb mf_regexr:regexr()}, {it:to} may contain {cmd:\0}, {cmd:\1}, ..., {cmd:\9}
to reference back to the matched subexpressions (where {cmd:\0} refers to
the entire string that satisfied the regular expression).
{pstd}
When {it:s}, {it:from}, and {it:to} are not scalar, {cmd:mm_regexr()} returns
element-by-element results.
{title:Remarks}
{pstd}
Examples:
{com}: mm_regexr("AA123BB", "AA([0-9]+)BB", "XX_\1_YY")
{res} XX_123_YY
{com}: mm_regexr("AA123BB", "A([0-9]+)B", "X_\1_Y")
{res} AX_123_YB
{com}: mm_regexr("AA123BB", "^A([0-9]+)B$", "X_\1_Y")
{res} AA123BB
{com}: mm_regexr("AA123BB", "([0-9]+)BB$", "_\1_YY")
{res} AA_123_YY
{com}: mm_regexr("AA123BB", "^AA([0-9]+)", "XX_\1_")
{res} XX_123_BB{txt}
{pstd}
Use a backslash to escape a reference within {it:to}. For example, type {cmd:\\1} to include
{cmd:\1}:
{com}: mm_regexr("AA123BB", "AA([0-9]+)BB", "XX_\\1_YY")
{res} XX_\1_YY{txt}
{title:Conformability}
{pstd}
The arguments have to be r-conformable (see help
{helpb m6_glossary:{bind:[M-6] glossary}}). Returned is a matrix of
max(argument rows) rows and max(argument columns)
columns containing element-by-element calculated results.
{title:Diagnostics}
{pstd}
References to non-existing subexpressions result in empty string.
{title:Source code}
{pstd}
{help moremata_source##mm_regexr:mm_regexr.mata}
{title:Author}
{pstd}
Ben Jann, University of Bern, jann@soz.unibe.ch
{title:Also see}
{psee}
Online: help for
{helpb m4_string:{bind:[M-4] string}},
{helpb mf_regexm:{bind:[M-5] regexm()}},
{helpb moremata}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。