Tag: 正则expression式

使用正则expression式从该string中提取不在括号内的数字

[15-] [41-(32)] [48-(45)] [70-15] [40-(64)] [(128)-42] [(128)-56] 我有这些值,我想提取的值不是在括号中。 如果有多个,那么把它们加在一起。 什么是正则expression式来做到这一点? 所以解决scheme看起来像这样: [15-] -> 15 [41-(32)] -> 41 [48-(45)] -> 48 [70-15] -> 85 [40-(64)] -> 40 [(128)-42] -> 42 [(128)-56] -> 56

使用Regex和PowerShellreplaceCSV中的多个行模式?

我有一个Excel文件,其中包含数千行数据,我使用各种PowerShell脚本从SharePoint服务器中检索数据。 行的内容结构非常相似: General/Categoryname /ADMIN_XXXX_YEAR(random stuff here)/more_random_stuff_here.filetype 问题是我需要过滤除了ADMIN_XXXX_YEAR(randomstuffhere)部分的所有内容。 就正则expression式而言,我会看到类似于: http://www.regexper.com/#General \%2F%28 \ w%2B%29 \%2F%28 \ w%2B%29_%28 \ d%2B%29_%28 \ d%2B%29 \%28%28%* 29 \ 29% (尽pipe公平(\w+)\/(\w+)_(\d+)_(\d+)\((.*)\)应该足够了)。 是的,我知道我的正则expression式并不是一stream的,但expression式通常会达到我需要的目的,因为它会find我所需要的。 这里的问题大部分来自于我在StackExchange上所了解和search的内容,如果没有VBA脚本,就无法将其应用于Excel。 有内部的search和查找,虽然我不清楚如何执行这样的search将起作用。 也许有一种方法在PowerShell中做到这一点,我不知道? 如果有人有一些可以帮助我的信息材料,我将不胜感激。

从具有模式的Excel公式提取列名称

我想从Excel公式中提取列名,但我可以用下面的代码得到的是最新的名字: String formula = "IF(AB13=0,0,IF(+I13/AC13>100%,100%,+I13/AC13))"; Matcher matcher = Pattern.compile(".*\\W([AZ]+)\\d+.*").matcher(formula); while (matcher.find()) { System.out.println("Column name= "+matcher.group(1)); } 我期待它显示 "Column name= AB" "Column name= I" "Column name= AC" "Column name= I" "Column name= AC" 但它只显示“列名= AC”。 我得到的事实是,我的模式的第一个“*”匹配整个formula => IF(AB13=0,0,IF(+I13/AC13>100%,100%,+I13第一部分formula => IF(AB13=0,0,IF(+I13/AC13>100%,100%,+I13但我不我不知道如何让它匹配所有的可能性。 在此先感谢您的帮助。

在Excel中提取和求和数字子string

我不认为你可以在Excel本地做正则expression式,我得到的印象,这将需要一些VBScript,我不知道。 我有一个数据集,其中包含给定列中的以下格式的string 123 foo, 234-bar, 345 baz , … 我想提取在每个逗号分隔的logging开始的数字, 并将他们在另一列。 如果我们在逗号分割string,并考虑子string,我认为这将足以作为一个正则expression式 ^\D*?(\d+)?\D*/ (只有多个数字中的第一个应该被考虑,并且一个无数的string应该提取空白并且被认为是零)。 这是一些样本数据的预期输出 INPUT OUTPUT ————————————- 5-foo, 10 bar 15 11 baz, 11 bad,string 0 hello,123,100, 100 ,xxx 323 我如何让Excel执行这个计算?

计算特定标签/词之间的字符

我有一个excel文件,其string不能超过60个字符。 有些string受限于<br>而其他一些string使用<break> 。 例如,我有这个单元格: Lorem ipsum dolor sit amet, consectetur adipiscing elit.<br> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam amet.<br>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla eu sed.<break>Lorem ipsum dolor sit amet, consectetur adipiscing elit.<br> 我想Excel或记事本++突出显示超过60个字符的标签之间的string,有没有“简单”的方法来做到这一点? 谢谢!

SSIS Excel连接pipe理器expression式

我使用SSISvariables为文件夹path和文件名设置了Excel连接,其中包含属性ConnectionString和ExcelFilePath的expression式。 ConnectionString =“Provider = Microsoft.Jet.OLEDB.4.0; Data Source =”+ @ [User :: parmSourcePathUNC] + @ [User :: varSourceFileName] +“; Extended Properties =”+“\”“+”EXCEL 8.0; HDR = YES“+”\“”+“;” ExcelFilePath = @ [User :: parmSourcePathUNC] + @ [User :: varSourceFileName] 如果文件存在,这是好的,但我使用存储过程来确定具有date后缀的文件名的最新名称。 如果我通过单个字符更改文件的名称(以模拟第二天的到来),则包无法通过以下错误进行validation: 错误:“组件”Excel源“(14)”未通过validation并返回validation状态“VS_ISBROKEN”。 新的文件名是通过在从Excel载入之前调用Sproc来设置的,所以这应该是可能的,但是我没有看到(例如)推迟validation。 在此先感谢您的帮助。

使用索引和匹配函数从工作簿中的多个工作表中返回一个值

我有一个每周运行生成的url报告。 报告每周都会在工作簿中生成一个新的工作表,每次保存大约6个月的数据。 我想从工作表中查找并提取特定url上的数据,并将其显示在新的工作表中。 例如,工作表中的数据可能如下所示: 3月9日URL | 访问| 转换mysite.com/apple | 300 | 10 mysite.com/banana | 100 | 20 mysite.com/pear | 600 | 五 并且工作簿中的每个工作表是不同的星期,如3月2日,2月23日等 现在,我想在一个工作表中的每个苹果url,以便我可以比较…苹果苹果…(双关语意)。 由于有数以百计的这些我无法负担的时间手动做这个每个细分我需要,所以我尝试了以下。 = INDEX( '312015' 8:999,MATCH( “苹果”, '312015' 8:999,-1)) 我不确定哪个开关用于匹配,而不是从我在线阅读“完全匹配”,所以我试图1和-1得到一个不完全匹配,虽然现实是我可能需要一个部分因为苹果只是url的一部分。 任何关于如何获得这个工作的build议,或者是一个更好的方法来做到这一点在excel中会很棒。 此外,我不能操纵报告输出,因为它来自第三方供应商,我已经问他们调整这一点。 我也想过使用vlookup,但我相信只返回第一个结果的值,而不是多个。

正则expression式来testingdateVBA

我正在寻找一个testingdate格式的代码,date应该是以下格式之一:年份:13xx – 20xx月份:xx,xdate:xx,xdate将在2012/1/1 2012之后/ 01/01 2012/1/01 2012/01/1 我尝试了以下 Option Explicit Sub ttt() MsgBox (testDate("2012/01/01")) End Sub Function testDate(strDateToBeTested As String) As Boolean Dim regularExpression, match Set regularExpression = CreateObject("vbscript.regexp") testDate = False 'regularExpression.Pattern = "(14|13|19|20)[0-9]{2}[- /.]([0-9]{1,2})[- /.]([0-9]{1,2})" 'regularExpression.Pattern = "(\d\d\d\d)/(\d|\d\d)/(\d|/dd)" regularExpression.Pattern = "([0-9]{4}[ /](0[1-9]|[12][0-9]|3[01])[ /](0[1-9]|1[012]))" regularExpression.Global = True regularExpression.MultiLine = True If regularExpression.Test(strDateToBeTested) Then ' […]

jquery exceltypes的dynamic公式计算

我正在产生财务分析,并为账目表生成dynamic公式。 例 现金– input能够领域 短期投资– input能力领域 液体资产– 公式字段 ,我为这个@1~Cº + @2~Cº产生公式 应收票据– 可input字段 应收帐款– 可input字段 拨备债务– input能力领域 净应收账款– 公式字段 ,我为这个@4~Cº + @5~Cº+@6~Cº生成公式 等等… 我正在计算文本框focusout calculate_year 。 function calculate_year(ThisObj) { var obj; //intiate vaiables var year_formulaTxt = "",resultExp ="",lastPos ="",sequenceTypePosC="",sequenceTypePosP="",sequenceTypePosF="",COACode="",COAValue="",ratio_formulaTxt = ""; var ratio_formulaTxt = "",COACode_P="",COAValue_Pyear_formula = "",ratio_formula = "",year_formulaObj = "",ratio_formulaObj = "",year_formulaArr = "",ratio_formulaArr […]

用正则expression式用macrosreplace巧妙的值?

我有以下macros: Sub MacroClear() Dim wbD As Workbook, _ wbC As Workbook, _ wsD As Worksheet, _ wsC As Worksheet, _ DicC() As Variant, _ Dic() As String, _ ValToReplace As String, _ IsInDic As Boolean Set wbD = Workbooks.Open("D:\Users\me\Documents\macro\Dictionnary", ReadOnly:=True) Set wbC = Workbooks("FileToTreat.xlsm") Set wsD = wbD.Worksheets("Feuil1") Set wsC = wbC.Worksheets("draft") ReDim DicC(1, 0) […]