【问题标题】:Parse a property of a connection string解析连接字符串的属性
【发布时间】:2017-04-13 01:04:52
【问题描述】:

我有一个如下所示的字符串,我需要使用 PowerShell 将其解析出来。我只想将字符串保持到“EntityPath”并取出实体路径之后的所有内容:

Endpoint=sb://abcdefg.servicebus.windows.net/;SharedAccessKeyName=listenkey_1137;SharedAccessKey=W2c26OiBwae9f/vgPcJWgtD709oTTJu1VlB8i4OkqUc=;EntityPath=listen_1137

【问题讨论】:

标签: powershell azure servicebus


【解决方案1】:

试试这个:

$mystring="Endpoint=sb://abcdefg.servicebus.windows.net/;SharedAccessKeyName=listenkey_1137;SharedAccessKey=W2c26OiBwae9f/vgPcJWgtD709oTTJu1VlB8i4OkqUc=;EntityPath=listen_1137"
$NameValue=$mystring -replace ";", "`n" | ConvertFrom-StringData
$NameValue.EntityPath

【讨论】:

  • 这是一个很棒的解决方案!我做 Powershell 已经有一段时间了,但之前还没有看到尝试ConvertFrom-StringData 方法的理由。感谢您以简单优雅的方式获得价值!
【解决方案2】:
$testStr = "Endpoint=sb://abcdefg.servicebus.windows.net/;SharedAccessKeyName=listenkey_1137;SharedAccessKey=W2c26OiBwae9f/vgPcJWgtD709oTTJu1VlB8i4OkqUc=;EntityPath=listen_1137"

$parts = $testStr -split "EntityPath"

Write-Host $parts[0]

这可能有效

【讨论】:

    【解决方案3】:

    我不确定你现在在问什么,但我想这是第二个问题。我会尝试理解您的问题,因为它的英语有些蹩脚。

    function Invoke-MyWork($testStr)
    {
         $parts = $testStr -split "EntityPath"
         $parts[0]
    }
    $originalValue = "Endpoint=sb://abcdefg.servicebus.windows.net/;SharedAccessKeyName=listenkey_1137;SharedAccessKey=W2c26OiBwae9f/vgPcJWgtD709oTTJu1VlB8i4OkqUc=;EntityPath=listen_1137"
    
    $upToEntityPath = Invoke-MyWork $originalValue
    
    
    Write-Host "UpToEntityPath: $($upToEntityPath)"
    Write-Host "OriginalValue: $($originalValue)"
    

    【讨论】:

      【解决方案4】:

      这里是使用 regex 的解决方案。

      $ep = "Endpoint=sb://abcdefg.servicebus.windows.net/;SharedAccessKeyName=listenkey_1137;SharedAccessKey=W2c26OiBwae9f/vgPcJWgtD709oTTJu1VlB8i4OkqUc=;EntityPath=listen_1137"
      [regex]::Match($ep, 'EntityPath=([^;|\s]+)').Groups[1].Value # output: listen_1137
      [regex]::Match($ep, '(EntityPath=[^;|\s]+)').Groups[1].Value # output: EntityPath=listen_1137
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-01-21
        • 2023-03-08
        • 2012-03-29
        • 2014-08-18
        • 2021-10-28
        • 1970-01-01
        • 2016-09-20
        • 2018-02-26
        相关资源
        最近更新 更多