gpt4 book ai didi

excel - 使用公式,从变量字符串中提取操作系统版本号

转载 作者:行者123 更新时间:2023-12-04 21:17:19 26 4
gpt4 key购买 nike

我有一个在我工作场所的一堆服务器上运行的操作系统列表。给出操作系统的字符串可以有多种格式。以下是一些示例:

  • AIX 5.1
  • VMware ESX Server 3.5.0 build-110268
  • Linux Linux 2.6.X Linux
  • 红帽企业 AS 4 (2.6.9-78.0.13.ELlargesmp)
  • Microsoft (R) Windows (R) 2000 高级服务器
  • 微软 Windows XP Win2008R2 6.1.7601

  • 总共有 180 个唯一字符串(以及超过 10,000 个服务器)。

    我的老板要求一个公式来从每个字符串中提取操作系统类型和版本。我通过查找一个包含十个条目的表,为能够可靠工作的操作系统类型制作了一个。但是版本公式更难,因为版本的格式取决于操作系统的类型,即使这样,每种操作系统类型也可以有多种格式。

    就我而言,您需要一个包含 180 行的表,字符串在 COL A 中,版本在 COL B 中,然后对字符串进行 Vlookup。但是,他要求从字符串中提取版本,仅使用 excel 公式,而不使用 vba。

    在这一点上我几乎放弃了,所以我把它扔到这个网站上。任何人都知道这是否可以做到,以及如何做到?

    最佳答案

    这是我的尝试:

    =IF(NOT(ISNUMBER(SEARCH(".", A1))), "Cannot find version number", IF(NOT(OR(MID(A1, SEARCH(".", A1) - 2, 1) = "1", MID(A1, SEARCH(".", A1) - 2, 1) = "2", MID(A1, SEARCH(".", A1) - 2, 1) = "3", MID(A1, SEARCH(".", A1) - 2, 1) = "4", MID(A1, SEARCH(".", A1) - 2, 1) = "5", MID(A1, SEARCH(".", A1) - 2, 1) = "6", MID(A1, SEARCH(".", A1) - 2, 1) = "7", MID(A1, SEARCH(".", A1) - 2, 1) = "8", MID(A1, SEARCH(".", A1) - 2, 1) = "9")), IF(NOT(ISERROR(MID(A1, SEARCH(".", A1) - 1, SEARCH(" ", MID(A1, SEARCH(".", A1), LEN(A1)))))), MID(A1, SEARCH(".", A1) - 1, SEARCH(" ", MID(A1, SEARCH(".", A1), LEN(A1)))), MID(A1, SEARCH(".", A1) - 1, LEN(A1))),  IF(NOT(ISERROR(MID(A1, SEARCH(".", A1) - 2, SEARCH(" ", MID(A1, SEARCH(".", A1), LEN(A1)))))), MID(A1, SEARCH(".", A1) - 2, 1 + SEARCH(" ", MID(A1, SEARCH(".", A1), LEN(A1)))), MID(A1, SEARCH(".", A1) - 2, LEN(A1)))))

    这个(复杂的)公式的好处是它适用于大于 9 的版本。例如,如果整个文本是“Ubuntu Linux 13.5.3”,它将打印出“13.5.3”。希望这可以帮助!

    编辑:我应该补充一点,我的公式假定版本 100 或更高版本没有操作系统。

    关于excel - 使用公式,从变量字符串中提取操作系统版本号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11604909/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com