asked on
$erroractionpreference = "SilentlyContinue"
$NAUsers = Get-ADUser -SearchBase "OU=Fabrikam,DC=microsoft,DC=com" -Filter * -Properties * |Sort-Object Name |Select-Object -Property Name, City, State, EmailAddress, OfficePhone, MobilePhone |Where-object {$_.EmailAddress}
$outfile = "c:\test\ADUsersPhone.csv"
foreach($users in $NAUsers){
$something =(PhoneNum($users.officephone))
$output =@($users.Name, $users.City, $users.State, $users.EmailAddress, $something)
$output |join-string -separator ","
}
Function PhoneNum($stringer){
#Remove "+"
if($stringer.IndexOf("+") -ge 0){
$stringer1 = $stringer -replace "\+",""
}
else{
$stringer1 = $stringer
}
#Remove "."
if($stringer1.IndexOf('.') -ge 0){
$stringer2 = $stringer1 -replace "\.",""
}
else{
$stringer2 = $stringer1
}
#Remove "-"
if($stringer2.IndexOf('-') -ge 0){
$stringer3 = $stringer2 -replace "-",""
}
else{
$stringer3 = $stringer2
}
#Remove "("
if($stringer3.IndexOf("(") -ge 0){
$stringer4 = $stringer3 -replace '\(',""
}
else{
$stringer4 = $stringer3
}
#Remove ")"
if($stringer4.IndexOf(")") -ge 0){
$stringer5 = $stringer4 -replace '\)',""
}
else{
$stringer5 = $stringer4
}
$private:rOphone = $stringer5.Split(" ", [StringSplitOptions]::RemoveEmptyEntries)
$uOphone = [string]::Join("", $rOphone)
return $uOphone
}