# 修复 if-else 语句无花括号时的值表达式提取 Spec

## 背景
当 if 或 else 语句没有花括号包围时（如单行 if/else），当前代码提取的是整个赋值语句，而应该只提取赋值右侧的值表达式。

## 测试用例分析

### 输入代码
```csharp
if (_eventIdx < _table.MainDescription.Length)
    m_text_desc.text = _table.MainDescription[_eventIdx];
else
    m_text_desc.text = _table.MainDescription[0];
```

### 期望输出
- 第一个 snippet:
  - `originalIndex`: `_table.MainDescription[_eventIdx]` 的位置 (95)
  - `originalCode`: `_table.MainDescription[_eventIdx]`
  - `convertedCode`: `_table.MainDescription[_eventIdx].TR()`
- 第二个 snippet:
  - `originalIndex`: `_table.MainDescription[0]` 的位置
  - `originalCode`: `_table.MainDescription[0]`
  - `convertedCode`: `_table.MainDescription[0].TR()`

## 修改内容

### 问题定位
在 `CSharpStringExtractor.ts` 中，`extractValueExpression` 或相关方法处理 if-else 语句时：
- 当前：提取整个赋值语句 `m_text_desc.text = _table.MainDescription[_eventIdx]`
- 应该：只提取赋值右侧的值表达式 `_table.MainDescription[_eventIdx]`

### 修复策略
1. 识别 if/else 后没有花括号的单行语句
2. 跳过赋值左侧部分（`m_text_desc.text = `）
3. 只提取赋值右侧的表达式
4. 对提取的表达式应用 `.TR()` 转换

## 影响范围
- `CSharpStringExtractor.ts` 中的值提取逻辑
- 特别是在 `extractValueExpression` 或 `processStatementAndExtractValue` 方法中
