zoukankan      html  css  js  c++  java
  • 记第一次使用Excel进行计算

    早就知道Excel强大, 可是始终也没用过什么高级功能. 之前至多是用它来看看SharePoint的ULS日志, 因为Filter功能实在是非常好用.

    今天, 在看dump的时候遇到了一个问题, 使用!dumpheap –stat, 在Fragmented blocks larger than 0.5 MB的部分, 看到特别多条记录, 于是就想统计一下这些对象一共占用了多少内存.

    问题描述

    =================

    简化来说, 我从WinDBG的输出中拷贝了类似如下的文字:

    0d6998e0    5.2MB         0dbc3218 System.String
    111a0598    3.8MB         11577fa8 System.String
    0d6998e0    5.2MB         0dbc3218 System.String
    111a0598    3.8MB         11577fa8 System.String
    0d6998e0    5.2MB         0dbc3218 System.String
    111a0598    3.8MB         11577fa8 System.String
    0d6998e0    5.2MB         0dbc3218 System.String
    111a0598    3.8MB         11577fa8 System.String
    0d6998e0    5.2MB         0dbc3218 System.String
    111a0598    3.8MB         11577fa8 System.String
    0d6998e0    5.2MB         0dbc3218 System.String
    111a0598    3.8MB         11577fa8 System.String
    0d6998e0    5.2MB         0dbc3218 System.String

    我如何才能比较方便地获取第二列的所有的数字之和?

    解决方案

    =================

    1. 首先将该段文字存入一个文本文档.

    2. 使用Excel的Data Import From Text功能.

    image

    3. 得到这样的excel文件

    image

    4. 如果B列全是数字就OK了, 可惜有MB挡路. 先去进行了Google找到了一篇文章Extracting numbers from alphanumeric strings. 看了好久, 终于明白了这篇文章中的技巧. 可是该技巧却不适合我这个应用. 因为小数点的问题并没有被考虑到, 所以该解决方案只适用于数字连续的整数.

    5. 本来我是不会使用Excel公式的, 看了上面的文章, 就明白了一点, 自己摸索一下, 就解决了我的问题. 其实我面临的问题更加简单, 只需要扣掉后面的MB, 然后再累加即可.

    6. 先使用我们需要得到的是B列的一个子串, 该子串从母串的首字母开始, 长度是母串的长度减去2("MB"的长度). 得到了子串后, 需要让其乘1, 以转型为数字. 公式如下:

    =1*MID(B1,1,LEN(B1)-2)

    7. 接下来使用AutoFill来填满结果列的全部.

    image

    8. 得到了数字, 剩下的事情就简单罗, 一个SUM搞定.

    image

    参考资料

    Extracting numbers from alphanumeric strings

    http://office.microsoft.com/en-us/excel-help/extracting-numbers-from-alphanumeric-strings-HA001154901.aspx

  • 相关阅读:
    bs4解析错误之 bs4 FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml.
    UI自动化之selenium元素定位不到问题的原因有哪几种?
    selenium定位:出现Message: element not interactable 元素不可交互的问题解决方案
    JS--编码规范
    JS操作数组-2
    JS-数组操作3
    JS操作数组
    用JS解决url地址中参数乱码的问题
    数组去重--ES5和ES6
    选择排序
  • 原文地址:https://www.cnblogs.com/awpatp/p/1998230.html
Copyright © 2011-2022 走看看