【问题标题】:Find position of first (from the right) numeric character in a text string查找文本字符串中第一个(从右侧开始)数字字符的位置
【发布时间】:2017-07-28 05:59:46
【问题描述】:

我有这些字符串:

fghs13412asdf
dfs234245gk

并且想要返回最后一个数字字符的位置,像这样:

5
3

也许 LibreOffice 中的某些内容与 Excel 不同,我在 Excel 中看到了所有示例。 Here 应该是直截了当的,并且正在返回错误。

【问题讨论】:

  • 不,不同。我不会按要求编辑差异,因为差异是不言自明的,问题和答案最好尽可能简单。

标签: regex string formula libreoffice-calc


【解决方案1】:

您需要第一个数字字符(如标题)还是最后一个数字字符(如您的问题正文)的位置?

  1. 如果是 第一个,使用正则表达式的简单 SEARCH() 函数应该可以解决问题,例如=SEARCH("([:digit:])";A1).

  2. 如果是最后一个,从字符串的开始算起,您可以使用不同的正则表达式(改编自an answer in the OpenOffice forums by gerard24):@987654325 @。

  3. 如果您需要最后一个数字字符的位置,从字符串的end开始计算,只需从LEN中减去步骤2中计算的值即可() 整个字符串:=LEN(A1)-(SEARCH("[0-9][^[0-9]]+$";A1)).

您将获得#VALUE!如果没有数字字符,或者输入字符串的最后一个字符是数字,则出错。请注意,字符串中的空格将被忽略:

【讨论】:

  • 优秀而彻底的答案。这就是我一直遇到的问题——最后一个字符是数字。谢谢
猜你喜欢
  • 2019-09-22
  • 1970-01-01
  • 2017-03-26
  • 1970-01-01
  • 2020-02-14
  • 1970-01-01
  • 2018-01-19
  • 1970-01-01
  • 2021-03-21
相关资源
最近更新 更多