给出一个字符串，编写一个函数来判断该字符串是否为有效的美国电话号码。有效电话号码的格式如下：(xxx) xxx-xxxx，其中 x 是数字。
```
phone_number = '(123) 456-7890'
```
以下是Python的实现代码：

```python
import re

def is_valid_phone_number(phone_number):
    pattern = r"^\(\d{3}\) \d{3}\-\d{4}$"
    return bool(re.match(pattern, phone_number))
    
# 测试
print(is_valid_phone_number('(123) 456-7890'))  # True
print(is_valid_phone_number('123-456-7890'))   # False
print(is_valid_phone_number('(123) 4F6-7890'))  # False
```

解释：

- `re.match()` 方法尝试从字符串的起始位置匹配正则表达式，如果匹配成功则返回一个匹配对象，否则返回 `None`。
- `bool()` 函数将匹配对象转换为布尔值。
- 正则表达式 `r"^\(\d{3}\) \d{3}\-\d{4}$"` 用于匹配以左括号 `(` 开始，以右括号 `)` 结束的电话号码，中间有一个空格和一个连字符 `-`，数字分别为 3 个、3 个、4 个。