-
Notifications
You must be signed in to change notification settings - Fork 0
/
Get-SubString.ps1
53 lines (46 loc) · 1.41 KB
/
Get-SubString.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<#
.SYNOPSIS
Substring based on the Start and Length value of any string.
.DESCRIPTION
Substring based on the Start and Length value of any string. However, Handling the Substring $null value and also used with the Default length. So, overwhelmed the exception in any of the cases.
.PARAMETER String*
The string to extract from
.PARAMETER Start
Optional, The start position. Default is 0.
.PARAMETER Length
Optional, The number of characters to extract. Default is 100.
.OUTPUTS
Returns extracts characters from a $String based on the $Start and $Length.
.EXAMPLE
Get-SubString -String 'This is substring function. This is extracted string' -Start 0 -Length 27
#>
function Get-SubString() {
[cmdletbinding()]
Param (
[string] $String = '',
[int]$Start = 0,
[int]$Length = 100
)
Begin {
}
Process {
try {
if (($String.Length -eq 0) -or ($Start -le 0) -or ($Length -le 0)) {
return '';
}
if ($String.Length -gt $Length) {
return $String.Substring($Start, $Length)
}
else {
return $String;
}
}
catch {
Write-Exception -ErrorObj $_ -Message "Throws an exception in 'Get-SubString'" -Stop $true
}
finally {
}
}
End {
}
}