我在2天内接受采访,我很难找到这个问题的解决方案:我想要做的是......对于任何电话号码......程序应该打印出它代表的所有可能的字符串.例如.)数字中的2可以用'a'或'b'或'c'代替,3代表'd''e''f'等.这样可以形成多少可能的排列给出了电话号码.我不希望任何人为它编写代码......一个好的算法或伪代码会很棒.
谢谢
验证电话号码的条件是什么?
首先它必须是一个数值,可以包括以下数字0123456789和加号.+
但是,以下条件如何,您从哪里获得这些数据?
- 必须采用[国家拨号代码+区号+电话号码]格式
- 必须是最小和最大长度
编辑:移动/手机号码的最小和最大长度是多少?
我正试着写一个正则表达式,从一个完整的电话号码字符串中提取电话分机.这应该适用于这样的数字:777.777.7777 x 7302
它也应该使用"ext","EXT","Ext","eXt","ext."和"Ext".基本上只是涵盖了它的所有常见用途.
我只需要"x 7302"部分.事实上,一旦我提取它,我只是将它剥离到扩展号码.
有人可以帮我吗?当正则表达式变得更复杂时,我会挣扎.
我在PHP函数(preg_match)中这样做,如果这将有助于任何人.
有没有从数据库中提取国际移动电话的简单方法?有没有人在他们的午夜冲浪中穿过开源软件或资源来解决这个问题?
欢迎任何指示,谢谢!
更新:
*1:我有一个带有电话号码的数据库,想要遍历所有电话号码,只提取或保存国际移动(手机)电话.任何开源软件或脚本或int.实现此目的的移动列表?
*2:找到一些可以合并在脚本中用于验证手机的列表.
*3:Google常用的Java,C++和Javascript库,用于解析,格式化,存储和验证国际电话号码:http://code.google.com/p/libphonenumber/
我正在使用Ruby清理CSV文件中的一些电话号码条目.有些用户输入了不需要的字符,我想对它们进行排序和删除(包括:句点,括号,连字符).在编写代码时,我意识到我可以使用Ruby提供的.delete方法,如下所示:
def clean_num
@file.each do |line|
number = line[3]
#Would need a .delete for every unwanted character?
clean_number = number.delete(".")
puts clean_number
end
end
Run Code Online (Sandbox Code Playgroud)
删除上述其他字符的更有效方法是什么?
我正在与手机联系人合作.当我点击按钮并获取所有联系信息,如姓名,电子邮件和电话号码时,我想从联系人列表中选择联系人.我只是收到了电子邮件和联系人姓名,但无法获取电话号码.我的代码在下面给出.
Intent contactPickerIntent = new Intent(Intent.ACTION_PICK,Contacts.CONTENT_URI);
startActivityForResult(contactPickerIntent, PICK_CONTACT);
}
});
}
@Override
public void onActivityResult(int reqCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
switch (reqCode)
{
case PICK_CONTACT:
Cursor cursor = null;
String email = "", name = "";
try {
Uri result = data.getData();
//Log.v(DEBUG_TAG, "Got a contact result: " + result.toString());
// get the contact id from the Uri
String id = result.getLastPathSegment();
// query for everything email
cursor = getContentResolver().query(Email.CONTENT_URI, null, Email.CONTACT_ID …Run Code Online (Sandbox Code Playgroud) 我必须从自由形式的文本中提取电话号码。
如何通过在 python 中使用 reg-ex 来管理它?
我找到了一个为了提取电子邮件地址。https://gist.github.com/dideler/5219706
我通过使用电话号码正则表达式而不是电子邮件地址正则表达式实现了相同的方法,但我无法获得输出。
def get_phoneNumber(text):
phone_number = ""
regex = re.compile("((\(\d{3,4}\)|\d{3,4}-)\d{4,9}(-\d{1,5}|\d{0}))|(\d{4,12})")
for phoneNumber in get_phoneNumbers(text, regex):
phone_number = phone_number + phoneNumber + "\n"
return phone_Number
def get_phoneNumbers(s, regex):
return (phoneNumber[0] for phoneNumber in re.findall(regex, s)
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到?
如何随机化电话号码的最后 4 位数字?
鉴于:
$phone = '000-000-0000';
Run Code Online (Sandbox Code Playgroud)
结果将是:
$phone = '000-000-1943';
Run Code Online (Sandbox Code Playgroud)
其中1943是一个随机数
这可以使用诸如 preg 之类的东西在单行命令中完成吗?
或其他一些单行命令?
问题:我正在使用Google的LibPhoneNumber包来验证Java中的电话号码.当该国家/地区设置为美国时,7777777779和2234567890被归类为无效号码,但7866438057有效.为什么是这样?我已经尝试阅读为什么它们可能无效,例如在美国电话号码维基百科页面上,但我看不到答案.
代码:
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
try {
PhoneNumber parsedNumber = phoneUtil.parse(number, iso3Country);
//Is it a valid number for the locale?
if (!phoneUtil.isValidNumber(parsedNumber)) {
//TODO Throw error!
}
}
Run Code Online (Sandbox Code Playgroud) 我用红宝石。我想将字符串转换为电话号码格式。
例子:
“0123456789”应转换为“0123-45-6789”
“01234567899”应转换为“0123-456-7899”
phone-number ×10
php ×2
regex ×2
ruby ×2
android ×1
asp.net ×1
c# ×1
contacts ×1
csv ×1
email ×1
formatting ×1
numbers ×1
permutation ×1
python ×1
random ×1
ruby-1.9.3 ×1
string ×1
validation ×1